Docker桥接网络原理图分享和pipework简单配置
2017-05-24 17:39
561 查看
1.Docker桥接snat网络原理图
2.使用pipework第三方开源网络配置工具配置docker容器网络和host主机网络在同一个网段
#1).逻辑示意图
#2).CentOS7需安装网络和桥接工具
yum install -y net-tools
yum install -y bridge-utils
yum -y install docker-io
禁用selinux
vim /etc/sysconfig/selinux
SELINUX=disabled
setenforce 0
#3) .安装pipework开源网络配置工具
#git clone https://github.com/jpetazzo/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
#第2步和第3步和第4步放入脚本一起执行,否则会出现断网连不上的现象
#4) .绑定虚拟网桥和物理网卡,实现物理网卡和虚拟网卡公用ip
service docker stop
ifconfig
docker0 down
brctl
delbr docker0
brctl addbr br0
brctl addif br0 eth0
#5).把物理网卡地址配置为虚拟网桥的管理地址,因为容器不会直接和物理网卡通信
ip addr del 10.0.0.10/24 dev eth0
ifconfig br0 10.0.0.10/24 up
#6).删除以前的路由,添加新的路由,出口指向br0虚拟网卡,网关指向物理交换机的网关
route del default
route add default gw 10.0.0.254
#7).启动一个不带网络的容器
##echo 'DOCKER_OPTS="-b=br0"' >> /etc/default/docker
docker run -itd --name test --net=none centos /bin/bash
#8).给已经存在的名称为test的容器配置地址和网关(如果是centos6升级内核安装的docker这步可能会报错,需要升级iproute)
pipework br0 test 10.0.0.100/24@10.0.0.254
#9)多个容器
运行一个容器:
[root@localhost ~]# pipework br0 $(docker run -d -it -p 80:80 --name testduliip centos) 172.16.146.113/24@172.16.146.1
再运行一个:
[root@localhost ~]# pipework br0 $(docker run -d -it --net=none --name testduliip01 centos) 172.16.146.112/24@172.16.146.1
重启容器后需要再次指定:
pipework br0 testduliip 172.16.146.113/24@172.16.146.1
pipework br0 testduliip01 172.16.146.112/24@172.16.146.1
2.使用pipework第三方开源网络配置工具配置docker容器网络和host主机网络在同一个网段
#1).逻辑示意图
#2).CentOS7需安装网络和桥接工具
yum install -y net-tools
yum install -y bridge-utils
yum -y install docker-io
禁用selinux
vim /etc/sysconfig/selinux
SELINUX=disabled
setenforce 0
#3) .安装pipework开源网络配置工具
#git clone https://github.com/jpetazzo/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
#第2步和第3步和第4步放入脚本一起执行,否则会出现断网连不上的现象
#4) .绑定虚拟网桥和物理网卡,实现物理网卡和虚拟网卡公用ip
service docker stop
ifconfig
docker0 down
brctl
delbr docker0
brctl addbr br0
brctl addif br0 eth0
#5).把物理网卡地址配置为虚拟网桥的管理地址,因为容器不会直接和物理网卡通信
ip addr del 10.0.0.10/24 dev eth0
ifconfig br0 10.0.0.10/24 up
#6).删除以前的路由,添加新的路由,出口指向br0虚拟网卡,网关指向物理交换机的网关
route del default
route add default gw 10.0.0.254
#7).启动一个不带网络的容器
##echo 'DOCKER_OPTS="-b=br0"' >> /etc/default/docker
docker run -itd --name test --net=none centos /bin/bash
#8).给已经存在的名称为test的容器配置地址和网关(如果是centos6升级内核安装的docker这步可能会报错,需要升级iproute)
pipework br0 test 10.0.0.100/24@10.0.0.254
#9)多个容器
运行一个容器:
[root@localhost ~]# pipework br0 $(docker run -d -it -p 80:80 --name testduliip centos) 172.16.146.113/24@172.16.146.1
再运行一个:
[root@localhost ~]# pipework br0 $(docker run -d -it --net=none --name testduliip01 centos) 172.16.146.112/24@172.16.146.1
重启容器后需要再次指定:
pipework br0 testduliip 172.16.146.113/24@172.16.146.1
pipework br0 testduliip01 172.16.146.112/24@172.16.146.1
相关文章推荐
- docker桥接网络原理图分享和pipework简单配置
- docker+pipework配置容器网络(一)
- Docker 网络之pipework 工具(2)将Docker容器配置到本地网络环境中
- docker+pipework配置容器网络(二)
- docker+pipework配置容器网络(三)
- 使Docker提供对外服务的网络配置(桥接与端口)
- 2.5-docker配置桥接网络
- docker数据卷备份恢复以及配置桥接网络
- 02docker简单使用和配置(网络、存储和Hub)
- centos修改docker网络配置方法分享
- Docker 网络之pipework 工具(3)单主机Docker容器VLAN划分
- docker 配置桥接网络
- Centos 6 Docker配置桥接网络
- VirtualBox桥接网络的简单配置,让虚拟机直接访问网络
- docker 配置桥接网络
- Centos 6 Docker配置桥接网络
- 使Docker提供对外服务的网络配置(桥接与端口)
- Docker容器学习梳理--容器间网络通信设置(Pipework和Open vSwitch)
- docker配置桥接网络
- 使Docker提供对外服务的网络配置(桥接与端口)