如何从谷歌云应用引擎中的单个项目部署来自相同或不同语言/运行时的多个应用程序?
答案 0 :(得分:7)
今天,App Engine与Google Cloud Console项目一一对应。您无法在同一项目中部署多个“应用程序”。但是,您可能仍然可以根据应用程序执行所需操作。
App Engine具有“服务”的概念,这是您应用程序的独立方面。您的App Engine应用程序可以拥有许多服务,每个服务都可以拥有自己的语言/运行时,甚至可以位于不同的App Engine环境中。
您可以说App Engine Standard上的Python服务用于为您的简单Flask站点提供服务,可以提供服务,该服务提供标准环境中用Java 8编写的API,并且可以在Node中提供另一项服务。 js在App Engine灵活环境中运行。
您的“默认”服务已在app.yaml
文件中定义。您的其他服务可以在不同的文件夹中定义,并且可以包含app.yaml
及其服务定义,也可以将其命名为backend.yaml
。有关配置文件的布局,请参阅this simple Python project。
有关App Engine上的服务的更多概念性信息,see Microservices Architecture on Google App Engine。
答案 1 :(得分:0)
在应用程序根目录中创建以下文件
创建包含以下内容的app.yaml文件:
runtime: nodejs8
service: default
创建包含内容的myserviceone.yaml文件:
runtime: nodejs8
service: myserviceone
创建包含内容的myservicetwo.yaml文件:
runtime: nodejs8
service: myservicetwo
使用命令部署
gcloud app deploy --project your_project_id app.yaml myserviceone.yaml myservicetwo.yaml
这将部署默认服务以及我的服务一和我的服务二。查看您的云控制台。 您可以使用
访问它们https://myserviceone-dot-yourProjectID.appspot.com/或 http://myserviceone.yourProjectID.appspot.com/
https://myservicetwo-dot-yourProjectID.appspot.com/或 http://myservicetwo.yourProjectID.appspot.com/