OPS Notes By 枯木

使用pipework桥接docker

| Comments

docker创建的时候,默认是接入docker0,只能单主机进行工作,但是在生产环境中往往不同主机的docker也是需要通信的,所以这里要借助另外一个工具,那就是pipework。

安装pipework

1
2
$ git clone https://github.com/jpetazzo/pipework.git
$ sudo cp -rp pipework/pipework /usr/local/bin/

安装相应依赖软件

1
$ sudo apt-get install apring bridge-utils -y

桥接网络

Ubuntu14.04

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
# cat /etc/network/interfaces
auto lo
iface lo inet loopback

auto eth0
iface eth0 inet manual

auto br0
iface br0 inet static
address 192.168.0.219
netmask 255.255.255.0
gateway 192.168.0.254
bridge_ports eth0
bridge_stp off
bridge_fd 0
bridge_maxwait 0
dns-nameservers 192.168.0.254

启动br0,使桥接生效

1
2
3
4
# ifup br0
# Bash=$(docker run -i -d -t 192.168.0.219:5000/ubuntu:14.04 /bin/bash)
# pipework br0 $Bash 192.168.0.223/24 
# 给指定容器添加虚拟网卡并桥接到br0,如此不同主机间的docker便可以通过br0通信了

拓展

关于进一步的内容[vlan| Open vSwitch | etc..]可以参考以下两篇文章:

–EOF–

Comments