• Docker:跨主机通信


    修改主机docker默认的虚拟网段,然后在各自主机上分别把对方的docker网段加入到路由表中,配合iptables即可实现docker容器夸主机通信。配置方法如下:

    设有三台虚拟机

    • v1: 10.108.8.200

    • v2: 10.108.8.205

    • v3: 10.108.8.202

    更改虚拟机docker0网段,v1为172.17.1.1/24,v2为172.17.2.1/24,v3为172.17.3.1/24

    #v1
    sudo ifconfig docker0 172.17.1.1 netmask 255.255.255.0
    sudo bash -c 'echo DOCKER_OPTS="-B=docker0" >> /etc/default/docker'
    sudo service docker restart
    
    # v2
    sudo ifconfig docker0 172.17.2.1 netmask 255.255.255.0
    sudo bash -c 'echo DOCKER_OPTS="-B=docker0" >> /etc/default/docker'
    sudo service docker restart
    
    # v3
    sudo ifconfig docker0 172.17.3.1 netmask 255.255.255.0
    sudo bash -c 'echo DOCKER_OPTS="-B=docker0" >> /etc/default/docker'
    sudo service docker restart
    

    然后在v1上把v2的docker虚拟网段加入到路由表中,在v2上将v1的docker虚拟网段加入到自己的路由表中

    # v1 10.108.8.200
    sudo route add -net 172.17.2.0 netmask 255.255.255.0 gw 10.108.8.205
    sudo iptables -t nat -F POSTROUTING
    > sudo iptables -t nat -A POSTROUTING -s 172.17.1.0/24 ! -d 172.17.0.0/16 -j MASQUERADE
    
    # v2 10.108.8.205   v3   10.108.8.202
    sudo route add -net 172.17.1.0  netmask 255.255.255.0  gw 10.108.8.200
    sudo iptables -t nat -F POSTROUTING
    sudo iptables -t nat -A POSTROUTING -s 172.17.2.0/24 ! -d 172.17.0.0/16 -j MASQUERADE
    

    至此,两台虚拟机中的docker容器可以互相访问了。

    原文地址:https://www.35youth.cn/531.html

        作者:onlooker 
        来源:三无青年博客
        原文:https://www.35youth.cn/531.html
        版权声明:本文为博主原创文章,转载请附上博文链接!
    
  • 相关阅读:
    html5语法
    Addthis使用
    css font-weight原理
    css3 background
    jquery对标签属性操作
    给textarea添加背景图
    label的for属性
    css3 text-shadow
    z-index堆叠规则
    css3 @font-face
  • 原文地址:https://www.cnblogs.com/35youth/p/11315078.html
Copyright © 2020-2023  润新知