win7 + centos7 +docker 1.12
方案1:virtualbox設定雙網絡卡(全部是hosty-only)
1. 設定虛擬網絡卡(enp0s8:192.168.64.0/24 enp0s9: 192.168.152.0/24)
host1/enp0s9:192.168.152.3 br0:192.168.11.2
host2/enp0s9:192.168.152.4 br0:192.168.10.2
2. 新增網橋(host1)
cd /etc/sysconfig/network-scripts/
vi ifcfg-br0
type=bridge
device=br0
bootproto=static
onboot=yes
ipaddr=192.168.11.2
netmask=255.255.255.0
gateway=192.168.11.1
dns1=114.114.114.114
3. 設定網絡卡enp0s8
cd /etc/sysconfig/network-scripts/
vi ifcfg-enp0s8
type=ethernet
bootproto=none
#defroute=yes
#peerdns=yes
#peerroutes=yes
#ipv4_failure_fatal=no
#ipv6init=yes
#ipv6_autoconf=yes
#ipv6_defroute=yes
#ipv6_peerdns=yes
#ipv6_peerroutes=yes
#ipv6_failure_fatal=no
name=enp0s8
#uuid=fd5ef4de-63f7-47bd-9a26-10acbaaa3ffe
device=enp0s8
onboot=yes
bridge=br0
4.reboot & ifconfig
5.修改docker檔案
vi /etc/sysconfig/docker-network
docker_network_options="-b=br0 --fixed-cidr='192.168.11.128/26' "
6.執行systemctl daemon-reload & service docker restart
7. 啟動容器 docker run -d -p --name redis docker.io/redis
8. 檢視docker inspect redis,容器的ip 192.168.11.128
9. 重複2-8,設定host2
不同點1
type=bridge
device=br0
bootproto=static
onboot=yes
ipaddr=192.168.10.2
netmask=255.255.255.0
gateway=192.168.10.1
dns1=114.114.114.114
不同點2
docker_network_options="-b=br0 --fixed-cidr='192.168.10.64/26' "
10.啟動第二個機器,獲得容器位址為192.168.10.128
11.在第一台機器ping 192.168.10.128 , 發現ping不通。需要加route
12.通過第二個網絡卡,新增路由
ip route add 192.168.10.0/24 via 192.168.152.4 dev enp0s9 (host1)
ip route add 192.168.11.0/24 via 192.168.152.3 dev enp0s9 (host2)
方案2: 利用docker network命令,只需要1個網絡卡
1. 建立network
host1: docker network create --subnet=192.168.99.0/24 --ip-range=192.168.99.64/26 br2
host2: docker network create --subnet=192.168.88.0/24 --ip-range=192.168.88.64/26 br2
2. 啟動容器
host1:docker run -d -p --net=br2 --name=redis2 docker.io/redis 192.168.99.65
host2 :docker run -d -p --net=br2 --name=redis2 docker.io/redis 192.168.88.65
3.新增路由
host1:ip route add 192.168.88.65 via 192.168.152.4 dev enp0s9
host2:ip route add 192.168.99.65 via 192.168.152.3 dev enp0s9
4. host1: ping 192.168.88.65 ok
docker exec -it /redis2 /bin/bash
ping 192.168.88.65 ok
Docker跨主機通訊
已安裝zookeeper。這裡使用前面mesos裡的zookeeper配置 sudo vi etc default docker etc default docker內容 docker add opts h tcp h unix var run docker.sock cluster store z...
Docker 跨主機通訊
修改主機docker預設的虛擬網段,然後在各自主機上分別把對方的docker網段加入到路由表中,配合iptables即可實現docker容器誇主機通訊。配置方法如下 設有三颱虛擬機器 更改虛擬機器docker0網段,v1為172.17.1.1 24,v2為172.17.2.1 24,v3為172.1...
Docker容器跨主機通訊
兩台主機上的docker容器直接通過ip位址進行通訊 各項配置如下 docker version 1.13.1 ip資訊根據個人需求部署 主機1的ip位址為 192.168.1.128 主機2的ip位址為 192.168.1.129 為主機1上的docker容器分配的子網 172.17.1.0 24...