我已经使用命令启动了一个 docker 容器
sudo docker run -it -P -d plcdimage
该映像是使用具有 EXPOSE 8080 指令的 Dockerfile 构建的。容器运行 jboss 服务器,并在其上部署了应用程序。端口映射是:
Command: sudo docker port be1837e849dc
Output: 8080/tcp -> 0.0.0.0:32771
当我尝试使用 url 从映射的主机端口访问容器中 jboss 上运行的 Web 应用程序时:
http://主机IP地址:32771/ http://IPAddressOfHost:32771/
我收到连接拒绝错误。以下是命令“netstat -tulpn”的结果
(Not all processes could be identified, non-owned process info
will not be shown, you would have to be root to see it all.)
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN -
tcp6 0 0 :::9999 :::* LISTEN -
tcp6 0 0 :::22 :::* LISTEN -
tcp6 0 0 :::32771 :::* LISTEN -
udp 0 0 0.0.0.0:68 0.0.0.0:* -
我尝试执行 telnet hostip 32771,它也导致连接被拒绝。
Docker version 1.12.1
build 23cf638
可能的原因是什么?
提前致谢
我发现容器内运行的 jboss 服务器没有监听 0.0.0.0。执行此操作的一种选择是在启动独立服务器时使用 -b 0.0.0.0。
/bin/standalone.sh -b 0.0.0.0
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)