【问题标题】:Unable to access docker SimpleHTTPServer container无法访问 docker SimpleHTTPServer 容器
【发布时间】: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


【解决方案1】:

-p 选项将容器的端口发布到主机。如果您运行指定了-p 8080:8080 的容器,您可能需要使用http://localhost:8080/Test.html

【讨论】:

    猜你喜欢
    • 2016-03-18
    • 2018-08-09
    • 1970-01-01
    • 2019-10-05
    • 1970-01-01
    • 1970-01-01
    • 2017-06-12
    • 2018-06-25
    相关资源
    最近更新 更多