适用于新应用程序引擎应用程序的 Python 3.7 本地开发服务器选项

2024-04-23

我有一个在标准 Python3 运行时上部署和运行的应用程序引擎应用程序。我还可以使用普通命令在本地运行它,例如flask run。但我无法像在 2.7 运行时中运行应用程序那样运行它dev_appserver.py。我正在使用最新的gcloud版本,但正在运行dev_appserver.py结果是:

错误:Python 3 及更高版本与 Google Cloud SDK 不兼容。请使用Python 2.7.x版本。

我以为我们不应该再这样做了,直到它看到:https://cloud.google.com/appengine/docs/standard/python3/tools/local-devserver-command https://cloud.google.com/appengine/docs/standard/python3/tools/local-devserver-command

开头是:

Python 3.7 本地开发服务器选项

Usage:
dev_appserver.py [选项] yaml_path [文件...]

Is dev_appserver.py是否与Python3兼容(也许我的路径中有旧版本)?如果没有,是否有一种在本地运行应用程序的新方法,该方法将遵守 app.yaml(例如正确处理静态路径)并提供其他细节,例如本地数据存储dev_appserver.py假如?


The dev_appserver.py对 Python 3 的支持仍然有限。从运行本地开发服务器 https://cloud.google.com/appengine/docs/standard/python3/testing-and-deploying-your-app#running_the_local_development_server:

Note:

  • 运行 dev_appserver 需要本地计算机上存在 Python 2.7.12+。
  • 更新后的 dev_appserver 不支持在 Windows 上开发 Python 3 应用程序。

Which might是为什么not为本地开发推荐的解决方案(或至少目前还没有)。从本地运行 https://cloud.google.com/appengine/docs/standard/python3/testing-and-deploying-your-app#running_locally:

We do not建议您依赖类似的工具dev_appserver, 随提供的本地开发服务器谷歌云SDK https://cloud.google.com/sdk/docs/。 但是,如果您要将现有 App Engine 应用程序从 Python 2 到 Python 3,我们已更新dev_appserver促进 这个流程。对于所有其他本地开发场景,我们建议 标准 Python 测试方法。

例如,您通常可以使用 Flask 来运行 Flask 应用程序 开发服务器使用:

python main.py

Django 应用程序可以使用以下命令启动:

python manage.py runserver

要模拟生产 App Engine 环境,您可以运行完整的 本地 Web 服务器网关接口 (WSGI) 服务器。为此,请使用 在 app.yaml 中指定为入口点的相同命令,例如 例子:

gunicorn -b :$PORT main:app
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

适用于新应用程序引擎应用程序的 Python 3.7 本地开发服务器选项 的相关文章

随机推荐