Docker网络
测试
#运行容器
[root@iZuf6iu3l09b01ael17tbrZ ~]# docker run -d -P --name tomcat01 tomcat
[root@iZuf6iu3l09b01ael17tbrZ ~]# docker run -d -P --name tomcat02 tomcat
#查看容器内的ip地址
ip addr
#宿主机可以ping通docker容器内部
[root@iZuf6iu3l09b01ael17tbrZ ~]# ping 172.17.0.2
[root@iZuf6iu3l09b01ael17tbrZ ~]# ping 172.17.0.3
原理:
1、我们每启动一个dockers容器,docker就会给docker容器分配一个ip,我们只要安装了docker,就会有一个网卡docker0桥接模式,使用的技术时veth-pair技术!
2、每次启动一个容器测试,就会发现多了一对网卡
3、只要容器删除,对应网桥一对就没了
–link
tomcat03 可以不需要ping tomcat的内网地址,ping tomcat02即可
自定义网络
查看所有的docker网络
网络模式
- bridge: 桥接docker默认
- mone: 不配置网络
- host: 和宿主机共享网络
- container: 容器网络连通! (用的少!局限很大)
# 我们直接启动的命令 --net bridge(默认不写就是这个),而这个就是我们的docker0
[root@iZuf6iu3l09b01ael17tbrZ ~]# dokcer run -d -P --name tomcat01 --net bridge tomcat
# docker0特点,默认,域名不能访问, --link可以打通连接!
# 我们可以自定义一个网络
[root@iZuf6iu3l09b01ael17tbrZ ~]# docker network create --driver bridge --subnet 192.168.0.0/16 --gateway 192.168.0.1 mynet
# subnet 子网地址
# gateway 网关
注意 :自己自定义create的网络可以直接ping名字