20.6 自定义网桥
除了默认的docker0网桥,用户也可以指定网桥来连接各个容器。
在启动Docker服务的时候,使用-b BRIDGE或—bridge=BRIDGE来指定使用的网桥。
如果服务已经运行,那需要先停止服务,并删除旧的网桥:
- $ sudo service docker stop
- $ sudo ip link set dev docker0 down
- $ sudo brctl delbr docker0
然后创建一个网桥bridge0:
- $ sudo brctl addbr bridge0
- $ sudo ip addr add 192.168.5.1/24 dev bridge0
- $ sudo ip link set dev bridge0 up
查看确认网桥创建并启动:
- $ ip addr show bridge0
- 4: bridge0: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state UP group default
- link/ether 66:38:d0:0d:76:18 brd ff:ff:ff:ff:ff:ff
- inet 192.168.5.1/24 scope global bridge0
- valid_lft forever preferred_lft forever
配置Docker服务,默认桥接到创建的网桥上:
- $ echo 'DOCKER_OPTS="-b=bridge0"' >> /etc/default/docker
- $ sudo service docker start
启动Docker服务。新建一个容器,可以看到它已经桥接到了bridge0上。
可以继续用brctl show命令查看桥接的信息。另外,在容器中可以使用ip addr和ip route命令来查看IP地址配置和路由信息。
