Docker flask应用程序可在Mac上运行,但不能在Windows OS上运行

时间:2020-07-07 16:08:06

标签: python windows docker flask operating-system

我构建了可在多台Mac机器上使用的docker应用。但是,当它在Windows 10(安装了最新的Docker)上运行时,转到http://0.0.0.0:5000/

时会产生以下错误
This site can’t be reached
The webpage at http://0.0.0.0:5000/ might be temporarily down or it may have moved permanently to a new web address.
ERR_ADDRESS_INVALID

供参考,文件flaskapp.py结尾:

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

Dockerfile看起来像这样:


FROM python:3
WORKDIR /app
COPY requirements.txt .
RUN pip install -r requirements.txt
COPY . /app
EXPOSE 5000
CMD [ "python", "flaskapp.py" ]

泊坞窗已构建并推入泊坞站集线器,然后使用以下命令拉并运行:

docker run -p 5000:5000 username/reponame

在多台Mac机器上运行时,终端会打印出:

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

我可以使用该地址导航到浏览器,并且我的应用程序可以正常工作。

在Windows上,它在命令行中打印相同的内容,但是无法访问该站点。

有什么想法吗?我以为docker应该跨平台工作。

1 个答案:

答案 0 :(得分:1)

这不是做到这一点的方法。您必须使用主机或容器的IP地址。 对于初学者,请尝试输入您的浏览器:

  1. http://localhost:5000

  2. http://127.0.0.1:5000

您也可以尝试在Windows命令行中运行: ipconfig

这应该为您提供Windows主机拥有的IP地址的列表, 那么您可以尝试使用这些地址访问您的应用。