【发布时间】:2016-07-20 05:02:32
【问题描述】:
我设置了一个 java 应用程序,它充当 Web 服务器并处理 http 请求。我已经测试过它可以在容器外工作(确实如此),但是当在容器中时,我的请求似乎没有得到它。
服务器监听 3971 端口,Dockerfile 如下所示:
FROM java:8
ADD VaultServer /
EXPOSE 3971
EXPOSE 3972
ENTRYPOINT ["java", "-jar", "VaultServer.jar"]
调用根地址应该返回一些东西(通常我会发送一个 GET 到http://localhost:3971/)。
我尝试将 'localhost' 替换为 docker-machine 的 IP 地址,以及我在检查服务器的运行容器时获得的 IP 地址,但似乎都没有响应。当我调用 docker-machine 的 IP 地址时,我得到 ERR_CONNECTION_REFUSED。还有什么我需要启用的吗?
【问题讨论】:
-
什么是 docker run 命令行?您是否发布了端口 3972? (-p 3972:3972)
-
这只是'docker run vault-server'。抱歉,我仍然在处理 docker。如果 Dockerfile 必须公开端口,为什么我必须发布端口?
标签: java http docker webserver