Flask Web 应用程序 + Azure Web 应用程序 = 端口上的 HTTP ping:8000,站点启动失败

问题描述 投票:0回答:1

当我在 Azure 中部署简单网页时,出现此错误。

2024-08-21T00:42:17.637Z 错误 - 容器 flashapp-test_0_3f696445 未响应端口 8000 上的 HTTP ping,站点启动失败。查看容器日志进行调试。

这是我的app.py

from flask import Flask

app = Flask(__name__)

@app.route('/')
def hello():
    return 'Azure Web App Running'

if __name__ == '__main__':
    app.run(host='0.0.0.0', debug=True)

我已经尝试了一切,但我无法克服这个错误。

我为端口 8000 设置了变量。我可以更改端口,但出现相同的错误。

我创建了新的 Azure Web Apps 并遇到了同样的问题。我确信它很简单。

flask azure-webapps
1个回答
0
投票

您提供的代码实际上是您遇到错误消息的原因。

在您的代码中,您有

app.run(host='0.0.0.0', debug=True)
。此行告诉 Flask 在任何可用接口 (0.0.0.0) 上运行并启用调试模式。但是,在 Azure 中,您不应指定端口,因为 Azure 会动态分配端口。

if __name__ == '__main__':
区块通常用于本地开发。当您将应用程序部署到 Azure 时,不会执行此块。 Azure 有自己的启动应用程序的流程。

更正了部署到 Azure 的代码:

from flask import Flask

app = Flask(__name__)

@app.route('/')
def hello():
    return 'Azure Web App Running'
  • 删除了
    app.run
    线。 Azure 将在部署时处理应用程序的启动。
  • 确保您的
    app.py
    文件是您的应用程序的入口点。

完成这些更改后,您的 Flask 应用程序应该侦听 Azure 分配的端口并有望成功启动。

© www.soinside.com 2019 - 2024. All rights reserved.