• 真实网卡配置文件
– cat /etc/sysconfig/network-scripts/ifcfg-eth0
• 虚拟网卡配置文件
– cat /etc/sysconfig/network-scripts/ifcfg-eth0:0
[root@jacob ~]# cat /etc/sysconfig/network-scripts/ifcfg-eth0:0
TYPE=Ethernet
BOOTPROTO=static
… …
NAME=eth0:0
DEVICE=eth0:0
ONBOOT=yes
IPADDR=192.168.4.15
创建虚拟网桥
[root@jacob ~]# cat /etc/sysconfig/network-scripts/ifcfg-br0
TYPE=Bridge
BOOTPROTO=static
… …
NAME=br0
DEVICE=br0
ONBOOT=yes
IPADDR=192.168.4.15
[root@jacob ~]# cat /etc/sysconfig/network-scripts/ifcfg-eth0
TYPE=Ethernet
BOOTPROTO=static
… …
NAME=eth0
DEVICE=eth0
BRIDGE=br0
ONBOOT=yes
IPADDR=192.168.4.15
[root@jacob ~]# ~]# brctl show
Docker网络拓扑
• 查看默认Docker创建的网络模型
docker network list
ip a s docker0
brctl show docker0 //启动容器会绑定该网桥
• 新建Docker网络模型
~]# docker network create –driver bridge test01
~]# docker network list
~]# ip a s
~]# docker network inspect test01
• 查看默认Docker创建的网络模型
– 自定义网段
[root@jacob ~]# docker network create –subnet=172.30.0.0/16 test01
使用自定义网桥
• 启动容器,使用刚刚创建的自定义网桥
[root@jacob ~]# docker run –network=bridge|host|none … …
[root@jacob ~]# docker run –network=test01 -id nginx
客户端访问容器内的资源
• 默认容器通过SNAT可以访问外网
• 但外部网络的主机不可以访问容器内的资源
• 端口映射
– 使用端口映射可以实现外部网络访问容器内的资源
[root@jacob ~]# docker run -p 8080 80 -id nginx
//如:真实机IP为192.168.4.5,
使用-p映射真实机的8080端口到容器中的80端口
[root@client ~]# firefox http://192.168.4.5