##1. 服務器信息linux
網絡: 192.168.1.1/24 網關: 192.168.1.1git
docker1 centos7 192.168.1.200github
docker2 centos7 192.168.1.201docker
##2.docker的安裝centos
關閉selinuxbash
# setenforce 0服務器
# vi /etc/selinux/config網絡
修改成SELINUX=disabled
測試
使用yum安裝dockercentos7
# yum install docker-io -y
啓動docker
# service docker start
檢查docker
# docker info
......
下載鏡像
# docker pull centos
##3.建立網橋
# vi /etc/sysconfig/network-scripts/ifcfg-br0
TYPE=Bridge BOOTPROTO=static DEFROUTE=yes PEERDNS=yes PEERROUTES=yes IPV4_FAILURE_FATAL=no DEVICE=br0 ONBOOT=yes IPADDR=192.168.1.200 #配置爲機器的ip PREFIX=16 GATEWAY=192.168.1.1 DNS1=114.114.114.114 #DNS服務器地址
修改物理網卡配置
# vi /etc/sysconfig/network-scripts/ifcfg-enxxxx
TYPE=Ethernet BOOTPROTO=dhcp 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=eno16777736 UUID=d0d3289e-9c2c-45f7-a569-c55aca9f0e8a DEVICE=ens37 ONBOOT=yes BRIDGE=br0 #add
重啓網絡
# service network restart
設置docker啓動參數,使用dr0網橋,設置單獨的fixed-cidr
# vi /etc/sysconfig/docker
在OPTIONS='--selinux-enabled'這行中修改成OPTIONS='--selinux-enabled -b=br0 --fixed-cidr=10.2.1.0/24' 即讓docker服務啓動時使用br0網卡進行橋接
重啓docker
# service docker restart
##4.安裝pipework
# wget https://github.com/jpetazzo/pipework/archive/master.zip
# unzip master.zip
# cp pipework-master/pipework /usr/local/bin/
# chmod +x /usr/local/bin/pipework
啓動一個docker
# docker run -itd --net=none --name=test centos /bin/bash
查看docker啓動的container
# docker ps
查看network namespace
# docker inspect -f "{{.State.Pid}}" 232621e9e9fb
19778
pipework將192.168.1.202ip綁定到test並將網關指到192,168.1.1
# pipework br0 test 192.168.1.202/24@192.168.1.1
docker2上測試可否ping通docker1
# ping 192.168.1.202
##5.同上安裝docker2
進去啓動的docker容器內 # docker exec -it b780a /bin/bash
\# ping 192.168.1.202 .....
#注意: