使用 Google Compute Engine 自动部署

Automatic deployment with Google Compute Engine

有谁知道如何在 Google Compute Engine 中自动处理部署? 我想发出像 npm 运行 deploy-to-gce 这样的命令,它会从 git 中提取所有文件,编译并启动节点应用程序

我知道在创建实例时可以 运行 一个启动脚本,但是 运行ning npm install(和 git clone)等每次都会花费很多时间我创建实例。每次要部署都从头开始创建似乎有点过分。

无法从实例外部 运行 脚本或在不登录的情况下向 VM 发出命令?

-贾尼

如果您想使用自动部署创建新实例,可以使用 Deployment Manager,请参阅 [1]。

另一方面,如果您有一个每次创建实例时总是安装的软件列表,那么您可以从现有 Compute Engine 实例的启动磁盘创建映像。然后使用该映像为您的实例创建新的启动磁盘,请参阅 [2],如果您需要安装其他软件,您可以使用启动脚本。

好消息是,使用 Deployment Manager,您可以结合这 3 种功能:创建新实例、添加现有启动磁盘(如上所述)并包含启动脚本以防您需要安装其他软件,请参阅 [ 3].

此外,您可以使用存储桶将启动脚本存储在 Google 云存储中并从那里调用它,这使您可以从任何地方访问您的启动脚本并绕过元数据服务器限制。详情请参阅[4]。

这里有一些 Deploy Manager 示例(模板),对于您可能觉得有用的其他任务,请参阅 [5]。

资源:

[1] https://cloud.google.com/deployment-manager/docs/how-to

[2]https://cloud.google.com/compute/docs/images#custom_images

[3] https://cloud.google.com/deployment-manager/docs/step-by-step-guide/setting-metadata-and-startup-scripts

[4]https://cloud.google.com/compute/docs/startupscript#cloud-storage

[5] https://github.com/GoogleCloudPlatform/deploymentmanager-samples