1. 程式人生 > >DOCKER 容器與外部主機網路通訊的配置

DOCKER 容器與外部主機網路通訊的配置

刪除預設的DOCKER0

ifconfig docker0 down

brctl delbr docker0

brctl show 檢視刪了沒有

brctl addbr dok0

配置dok0的IP,並橋接到物理網絡卡 ens33上面,注意此時ens33物理網絡卡原有的網路連線將會斷開

[email protected]:~# cat /etc/network/interfaces
# interfaces(5) file used by ifup(8) and ifdown(8)
#auto lo
#iface lo inet loopback
auto dok0
iface dok0 inet static
address 193.168.120.10 
netmask 255.255.255.0
gateway 193.168.120.254
bridge_ports ens33

dns_nameservers 8.8.8.8

配置DOCKER使用DOK0並指定為容器分配的IP地址範圍

[email protected]:~# cat /etc/default/docker 

DOCKER_OPTS="-b=docker_new1 --fixed-cidr='193.168.120.0/24'"

重啟網路及DOCKER服務

/etc/init.d/networking restart

service docker restart

啟動容器,再進入容器,IP分配到指定的網段,並能與外部通訊

docker ps -a

CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS                           PORTS         NAMES

fce4c9aef4be        python:2.7          "/bin/bash"              59 minutes ago      Up 19 minutes                                        modest_albattani

docker start fce4c9aef4be

docker attach fce4c9aef4be

再檢查通訊情況

系統平臺: Ubuntu 16.04 LTS

DOCKER版本:Docker version 1.13.1, build 092cba3