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中的绑定详细信息
谢谢