gpt4 book ai didi

python - Flask 在 Google App 引擎上的端口 5000 上运行

转载 作者:太空宇宙 更新时间:2023-11-03 15:16:49 27 4
gpt4 key购买 nike

在谷歌应用程序引擎上运行 Flask 应用程序时,它会抛出一个错误,提示我必须在端口 8080 上为我的应用程序提供服务。所以我在

中指定了端口
if __name__ == "__main__":
app.run(port=8080)

但是在 App Engine 上运行它时,它显示我的应用程序仍在 https://127.0.0.1:5000 上提供服务

编辑:我在运行应用程序时感到困惑,所以我尝试使用 dev_appserver.py app.yaml 在本地运行应用程序(这会引发错误)在运行 dev_appserver.py ./ 时运行服务器,但我 localhost:8080 的页面是空白的,并且我在终端中收到错误,无法导入python 模块,即使我已经制作了一个 appengine_config.py 脚本和一个 lib 子文件夹,其中下载了所有 python 包。

我的项目结构是:

根/
-app.py
--lib/
- 静止的/
--模板/
-app.yaml
-appengine_config.py

编辑:服务器现在似乎运行良好,但仍然无法导入python包(我将它们安装在lib文件夹中,而且我也使用了sys hack)这是错误:

Traceback (most recent call last):
File "/home/padam/Downloads/google-cloud-sdk/platform/google_appengine/google/appengine/runtime/wsgi.py", line 240, in Handle
handler = _config_handle.add_wsgi_middleware(self._LoadHandler())
File "/home/padam/Downloads/google-cloud-sdk/platform/google_appengine/google/appengine/runtime/wsgi.py", line 299, in _LoadHandler
handler, path, err = LoadObject(self._handler)
File "/home/padam/Downloads/google-cloud-sdk/platform/google_appengine/google/appengine/runtime/wsgi.py", line 85, in LoadObject
obj = __import__(path[0])
File "/home/padam/Documents/git/gae-fumen/app.py", line 4
from flask import Flask, render_template, jsonify, request
^

如何修复它?

最佳答案

除非您使用灵活运行时,否则要在本地运行标准应用引擎应用,您需要使用 dev_appserver 。在项目的根目录中,您可以运行 dev_appserver.py . .

带有 app.py至少包含以下内容:

from flask import Flask

app = Flask(__name__)

# define a few routes here or in app.yaml

@app.route('/')
def home():
"""Root page"""
return 'home'

然后,您可以在项目的 app.yaml 中定义如何启动 Flask 应用程序的处理程序部分:

handlers:
- url: .*
script: app.app # a reference to your app object defined in app.py

这应该可以解决应用程序引擎设置的问题。有关应用程序引擎和 Flask 入门的更多信息,请参见以下存储库:https://github.com/GoogleCloudPlatform/python-docs-samples/tree/master/appengine/standard/flask/hello_world

<小时/>

编辑:了解有关在哪个环境上运行的更多信息 here

您的 app.yaml 的内容表明您正在使用 flexible runtime 。如runtime: pythonentrypoint:... 。如果您想坚持使用灵活的运行时,那没问题。您首先必须在本地安装依赖项。首选方法是 virtual environment .

如果你想要的是app engine standard ,根据您的文件/文件夹布局, app.yaml 的结构将是接近于:

runtime: python27
api_version: 1
threadsafe: true

handlers:
- url: /.*
script: app.app

使用应用程序引擎标准,要使用 Flask,您将安装 pip install flask -t lib在使用dev_appserver.py运行应用程序之前将flask安装到您的lib文件夹中

关于python - Flask 在 Google App 引擎上的端口 5000 上运行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43818841/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com