Docker主机networking无法正常工作

我真的很困惑这个问题。 我的内部networking中有两台电脑。 两台电脑都可以ping内部服务器。 两台电脑都有相同的docker版本。 我运行docker run -it --rm --name cont1 --net=host java:8运行简单的docker容器在两台计算机上docker run -it --rm --name cont1 --net=host java:8命令。 然后ssh进入容器,并尝试ping内部服务器。 其中一个容器可以ping内部服务器,但其他人不能访问任何内部服务器。

怎么可能? 你有什么想法吗?

谢谢

将容器连接到同一networking中的其他系统通过端口映射完成。 为此,您需要运行docker容器与端口映射。 像 – 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将会是–177.17.0.2在运行中给出的端口是:1500

现在,发送到host_ip(192.168.134.122)和host_port(1234)的请求将redirect到具有ip(172.17.0.2)和port(1500)的容器。

请参阅iptables -L -n -t nat中的绑定详细信息

谢谢