【发布时间】:2016-09-21 13:09:25
【问题描述】:
以前有人问过这个问题,但我还没有找到解决我的问题的方法。我有一些我想使用 Python 的 SimpleHTTPServer 模块提供的静态文件。我已成功构建映像并运行它,但无法从浏览器访问文件。
这是我的 DockerFile:
FROM python:2.7
WORKDIR /test/
EXPOSE 8080
CMD python -m SimpleHTTPServer 8080
我正在使用以下命令:
docker build -t gwidgets/client-python-server .
docker run --rm -ti -p 8080:8080 -v /gwt-polymer-starter/:/test/ --name client2 gwidgets/client-python-server
图像运行良好,但是当我转到http://{container'sIP}:8080/Test.html 时,没有任何反应。服务器甚至没有收到请求。
我在 Windows 10 上运行 docker。
任何想法可能是什么问题?
【问题讨论】:
-
Docker for Windows 还是 Docker Machine?如果是 Docker Machine,您需要浏览到 Docker Machine 创建的 VM 的 IP 地址(使用
docker-machine ip找到它)。您的 Dockerfile 在 Linux 上按预期工作,因此看起来像是主机/网络问题。 -
感谢您指出 Docker 机器。运行 docker-machine ls 后,我选择了 VM ip 并使用它,现在它工作正常。
标签: python windows docker simplehttpserver