启动 gcloud 时有计算引擎 vm 运行 脚本

Have compute-engine vm run scripts when started gcloud

我正在尝试 运行 gcloud 上的 NodeJS 服务器。我使用 gcloud 元数据构建了一个启动脚本。 该脚本似乎不是 运行,因为我在日志中没有看到它的证据,也没有看到我的服务器联机。

当我 运行 使用 SSH 连接后的启动脚本命令时,一切正常。

我必须在 gcloud shell(不是虚拟机)中做些什么才能在虚拟机启动时让脚本 运行 生效吗?或者启动命令位于某个文件中?

我已经尝试了一些我在这里看到的不同的东西,但是 none 是针对 Debian 9 (stretch) 的,而其他的没有用。

我在 /etc 和 /var 中寻找某种命令来执行 脚本,但在网上找不到任何东西。

我也找了/etc/rc.local,但没有。

根据另一个 post 的说法,这里应该有一个名为 google.startup.script 的文件,但我找不到它。

如有任何帮助,我们将不胜感激。

当 VM 通过实例元数据启动时,您可以将脚本配置为 运行:

gcloud compute instances create example-instance \
    --metadata-from-file startup-script=examples/scripts/install.sh

如果您需要更广泛的范围,您可以指定 项目元数据 并且 实例元数据 继承它们。详情请参考以下link

https://cloud.google.com/compute/docs/startupscript