docker应用程序生成,但运行浏览器后表示无法访问此站点

cs7cruho  于 2021-08-20  发布在  Java
关注(0)|答案(2)|浏览(454)

docker创建图像文件并运行,但在浏览器上没有结果。
我的 flask 代码

from flask import Flask

app = Flask(__name__)

@app.route("/")
def home():
    return "Hello World"

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

dockerfile

FROM python:alpine3.7
COPY . /app
WORKDIR /app
RUN pip install -r requirements.txt

docker-compose.yml文件

version: "3.8"
    services:
      app:
    build: .
    command: python app.py
    ports:
      - "5001:5001"
    volumes:
      - .:/python-flask

发出命令后:-docker撰写
结果:
正在启动docker\u演示\u应用程序\u 1。。。已附加到docker_demo_app_1 app|*服务 flask app'app'(延迟加载)app|*环境:生产app_1|警告:这是开发服务器。不要在生产部署中使用它。应用程序1使用生产wsgi服务器。app|1|*调试模式:在所有地址上运行的app|1|*上。应用程序1警告:这是一个开发服务器。不要在生产部署中使用它。应用程序| 1 |*正在运行http://172.18.0.2:5001/ (按ctrl+c退出)应用程序1 |*使用stat重新启动应用程序1 |*调试器处于活动状态!app|U 1 |*调试器引脚:103-335-354
当我跑的时候http://172.18.0.2:5001/ 上面写着-

This site can’t be reached
172.18.0.2 took too long to respond.
uemypmqf

uemypmqf1#

那个

Running on http://172.18.0.2:5001/

这是误导。这是容器中的ip地址。如果从容器外部连接,请使用

http://127.0.0.1:5001/

这是浏览器本地的。如果您从其他地方浏览,请替换运行docker映像的服务器的ip地址。

gj3fmq9x

gj3fmq9x2#

0.0.0.0将在计算机的ip地址上运行。要通过web浏览器访问您的应用,请导航到 http://<machineIP>:5001

相关问题