zoukankan      html  css  js  c++  java
  • 不同network中的两个docker容器

    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规则
    

                  

      

  • 相关阅读:
    我的友情链接
    我的友情链接
    我的友情链接
    我的友情链接
    我的友情链接
    我的友情链接
    我的友情链接
    以太坊设计与实现:数据结构与对象-账户
    以太坊设计与实现:数据结构与对象-创世区块与配置分析
    以太坊设计与实现:数据结构与对象-链配置
  • 原文地址:https://www.cnblogs.com/The-day-of-the-wind/p/12882917.html
Copyright © 2011-2022 走看看