Skip to main content
 首页 » 编程设计

Docker 正在运行,但我无法访问 localhost之Flask 应用程序

2025年05月04日240落叶无声

我构建了 Flask 应用程序,并尝试使其在 Docker 文件上运行。

我运行两个命令:

1)

docker build -t my-api-docker:latest . 

2)

docker run -p 5000:5000 my-api-docker  

两者都运行没有错误,终端上的输出是经典的 Flask:

 * Environment: production 
   WARNING: This is a development server. Do not use it in a production deployment. 
   Use a production WSGI server instead. 
 * Debug mode: off 
 * Running on http://127.0.0.1:5000/ (Press CTRL+C to quit) 

但是

如果我访问:http://localhost:5000如果表明:

The page is not working

需求.txt

Flask==1.1.1 
requests==2.20.1 
pandas==0.23.4 

Dockerfile

FROM python:3.7 
RUN pip install --upgrade pip 
 
COPY ./requirements.txt /app/requirements.txt 
 
WORKDIR /app 
 
RUN pip install -r requirements.txt 
 
COPY . /app 
 
EXPOSE 5000 
 
CMD [ "flask", "run" ] 

请您参考如下方法:

它不应该与容器本地主机绑定(bind),即

Running on http://127.0.0.1:5000/ (Press CTRL+C to quit)

更改 Dockerfile 中的 CMD

CMD [ "flask", "run", "--host=0.0.0.0" ] 

CMD ["python3", "-m", "flask", "run", "--host=0.0.0.0"]  

或替换您的代码内部

app.run(host='0.0.0.0').