访问生产中的 Google App Engine Python 应用程序代码

use*_*953 5 google-app-engine google-app-engine-python

(背景:我是 Google App Engine 的新手,熟悉其他云提供商的服务)

我正在寻找类似于对生产节点的 shell 访问的访问/视图。

使用基于 Python/Django 的 Google App Engine 应用程序,我想查看生产中的代码。

我能找到的一个视图是 StackDriver“调试”视图。但是,显然“调试”视图中显示的代码并不反映更新的生产代码(基于生产站点上显示的内容,例如主页上的文本不同)。

Google App Engine 是否允许我通过 ssh 进入运行应用程序/代码的虚拟机?如果没有,如何检查生产中运行的代码?

谢谢。

Dan*_*scu 5

根据比较环境SSH debugging表中的行,弹性环境应用程序支持 SSH 访问,但标准环境应用程序不支持。

连接到实例

如果虚拟机实例处于调试模式,您可以在控制台中使用 SSH 或使用gcloud.

要连接到控制台中的实例:

  1. 访问您项目的云平台控制台实例页面: 转至实例页面

  2. 单击包含要访问的实例的行最右侧的SSH :

    这会将实例置于调试模式,并在终端窗口中打开实例的 SSH 会话。

    您还可以从下拉列表中选择不同的选项来启动 SSH 会话。

  3. 此时,您位于实例主机中,其中运行着多个容器。有关这些的更多信息,请参阅接下来的了解常见容器。

  4. 在终端窗口中,列出实例中运行的容器:

    sudo docker ps
    
    Run Code Online (Sandbox Code Playgroud)
  5. 命令的输出sudo docker ps按行列出每个容器;找到包含您的项目 ID 的行:这是运行您的代码的容器。记下该容器的名称。

  6. (可选)通过调用列出应用程序的日志记录信息:

    sudo docker logs [CONTAINER-NAME]
    
    Run Code Online (Sandbox Code Playgroud)
  7. 在运行代码的容器中启动 shell:

    container_exec [CONTAINER-NAME] /bin/bash
    
    Run Code Online (Sandbox Code Playgroud)
  8. 调试完成后,输入 exit 退出容器,然后再次退出以退出 SSH 会话。

  9. 禁用实例的调试以使其恢复正常运行。