You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何通过Cloud SDK shell在Google Cloud运行Python本地服务并排查报错

问题排查与解决方案

错误根因

  • YAML配置存在语法与兼容性问题
    • runtime:python37 键与值之间缺少空格,不符合YAML语法要求
    • handlers; 末尾错误使用分号,应改为英文冒号handlers:
    • 字段不兼容Python3运行时:Python3.7及以上版本的App Engine标准环境无需配置api_version、threadsafe参数,且handlers下的script字段仅支持auto取值,不支持直接指定.py脚本
  • 代码不符合服务运行规范:Google Cloud App Engine的Python3运行时要求代码遵循WSGI接口规范,直接执行print语句无法作为web服务返回HTTP响应

修复步骤

1. 修改YAML配置(默认文件名为app.yaml)

runtime: python37

handlers:
- url: /
  script: auto

2. 调整业务代码

方案A:使用Flask框架(推荐)

修改test.py内容如下:

from flask import Flask
app = Flask(__name__)

@app.route('/')
def hello():
    return 'hello world'

if __name__ == '__main__':
    app.run(host='127.0.0.1', port=8080, debug=True)

新增requirements.txt文件,声明依赖:

Flask==2.0.3
Werkzeug==2.0.3

方案B:原生WSGI实现(无需第三方依赖)

直接修改test.py内容如下即可:

def app(environ, start_response):
    start_response('200 OK', [('Content-Type', 'text/plain')])
    return [b'hello world']

3. 本地运行测试

首先安装依赖(仅方案A需要执行):
pip install -r requirements.txt
启动本地服务:
python test.py
如果需要模拟App Engine环境本地运行,可执行命令:
dev_appserver.py app.yaml

关联素材

操作示意图:
操作示意图
报错截图:
Google Cloud Shell报错截图

内容的提问来源于stack exchange,提问作者Naveen kumar

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.05 07:30:05