我对这个问题真的很困惑。我在我们的内部网络里有两台电脑。两台计算机都可以ping通内部服务器。两台计算机具有相同的docker版本。我在两台计算机上都使用docker run -it --rm --name cont1 --net=host java:8命令运行简单的docker容器。然后ssh进入容器并尝试ping内部服务器。其中一个容器可以ping通内部服务器,但另一个容器无法访问任何内部服务器。
这怎么可能呢?你对此有什么想法吗?
谢谢
发布于 2017-02-17 17:18:40
通过端口映射将容器连接到同一网络中的其他系统。为此,您需要运行带有端口映射的docker容器。like - docker run -it --rm --name cont1 -p host_ip:host_port:container_port java:8
例如,docker run -it --rm --name cont1 -p 192.168.134.122:1234:1500 java:8
注意: docker run中给定的容器端口在Dockerfile中公开
现在,以容器ip为例,在run is :1500中给出了- 172.17.0.2端口
现在,发送到host_ip(192.168.134.122)和host_port(1234)的请求被重定向到ip为172.17.0.2、端口为1500的容器。
请参阅iptables -L -n -t nat中的绑定详细信息
谢谢
https://stackoverflow.com/questions/40105063
复制相似问题