Flask / Docker - 数据不是由127.0.0.1发送的

时间:2018-06-11 01:36:23

标签: docker flask

我有一个烧瓶应用程序,如果使用“python app.py”启动服务器,它运行完美。浏览器客户端可以得到我想要的东西。

但是,如果我使用docker容器,如果我在DockerFile下面使用:

FROM python:3.6.5-slim
RUN mkdir /opt/convosimUI
WORKDIR /opt/convosimUI

RUN pip install Flask
RUN pip install grpcio
RUN pip install grpcio-tools
ADD . .

EXPOSE 5000

ENV FLASK_APP=app.py

CMD ["python", "-u", "app.py"]

浏览器(在Windows上)无法从服务器获得响应,在linux容器中,一切都运行良好,我可以使用wget获取127.0.0.1的内容,但在容器外,容器中的所有内容都无法访问。 / p>

如果我将DockerFile的lask行更改为:

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

不使用python app.py,然后再次使用。

为什么会这样?如果我想使用python app.py命令怎么办?

因为在app.py中有一些其他并行处理我需要共享另一个服务的客户端,并且在打开Web服务器时该客户端必须始终打开。所以我不能把它们放在不同的地方。

欢迎任何想法。谢谢!

0 个答案:

没有答案