访问在 Docker 容器内运行的 Flask 应用程序

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

我有一个 Flask 应用程序,如果我在本地运行

python app.py
,则运行不会出现错误。它说
Running on http://127.0.0.1:5000
,如果我只是转到
http://127.0.0.1:5000
,一切都会按预期进行。
app.py
的最后一行是
app.run(debug=True)

现在我尝试使用 Docker 运行这个应用程序。在我的 Dockerfile 中,其中一行是

EXPOSE 8501

然后我用

docker build -t testimage .

构建图像

最后我执行

docker run -it --expose=8501 -p 8501:8501 testimage
,它又说
Running on http://127.0.0.1:5000

我的问题是:我必须在浏览器中输入什么才能访问在 Docker 容器内运行的应用程序?

python docker flask portforwarding
1个回答
0
投票

您正在暴露端口 8501,但仍在端口 5000 上运行 Flask 应用程序。您可以在暴露的端口上启动应用程序(您可以使用

port
的参数来做到这一点)或在运行时暴露不同的端口docker,与运行的一个应用程序相匹配。
    

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