0

我有一个 Python GAE 应用程序,它也使用 Google Compute Engine VM 实例。我正在尝试从 shell 运行一些第 3 方应用程序。当我启动 Google Cloud Shell 程序并键入pwd时,路径显示:/home/<my_username>但是当我subprocess.call()从我的 python 代码调用时,日志显示:/home/vmagent/

所以我可以从命令行安装程序,/home/<my_username>但我无法从我的 Python 应用程序中访问这些程序,因为我不知道在哪里/home/vmagent/

所以我想我的问题是 - 如何从我的 GAE 应用程序或我的一个 Compute Cloud VM 实例访问我在仪表板上看到的 Google Cloud Shell?

4

1 回答 1

0

您必须使用Dockerfile.

gcloud ssh让你进入主机,而不是你的应用程序的容器。主机托管具有不同服务(memcache、cloudsql 代理等)的 docker,其中只有一个是您的应用程序的 docker。由您提供的 Docker 文件或默认文件(我猜您现在正在使用)准备。

此外,您不应该在 VM 实例上安装任何东西,它应该是无状态机器。或者,您必须对通过自动缩放或重新启动后为您启动的每个新实例执行相同的操作。

所以基本上你必须创建自己的 Docker 文件,FROM gcr.io/google_appengine/python并从那里安装你需要的一切。

请参阅https://cloud.google.com/appengine/docs/managed-vms/custom-runtimes

于 2016-01-28T03:39:48.743 回答