不同network中的两个docker容器

2023-05-18,,

1. 创建docker网络
docker network create --subnet 172.18.0.1/16 test
docker network ls 2. 创建两个容器指定docker network
docker run -ti --net=test --name test centos /bin/bash
docker run -ti --name test1 centos /bin/bash 3. 通过iptables打通两个网络
iptables -I DOCKER-USER -i docker0 -o br-2b3f3e35bd80 -j ACCEPT
iptables -I DOCKER-USER -o docker0 -i br-2b3f3e35bd80 -j ACCEPT 4. 进入容器中执行ping
ping 172.17.0.2

                      

5. 允许特定ip能够访问
iptables -I DOCKER-USER -i docker0 -o br-2b3f3e35bd80 -s 172.17.0.2 -d 172.18.0.2 -j ACCEPT
iptables -I DOCKER-USER -i br-2b3f3e35bd80 -o docker0 -s 172.18.0.2 -d 172.17.0.2
6. 解决方案2:将一个容器连接到另一个网络。

7. 解决方案3:创建第三个网络并将两个容器插入此网络
使用docker network connect将容器加入第三个网络中
docker network connect test(网络) test1(容器)
docker network inspect test:查看test网络信息 8. 方案1:增加DOCKER-USER的数据链
iptables -t filter -vL
将规则添加到DOCKER-USER链以允许不同网络之间的通信
第三步:使用ifconfig,ip a查看网络接口,增加iptables规则

              

  

不同network中的两个docker容器的相关教程结束。

《不同network中的两个docker容器.doc》

下载本文的Word格式文档,以方便收藏与打印。