docker-net


Docker网络

测试

image-20200924105716806

#运行容器
[root@iZuf6iu3l09b01ael17tbrZ ~]# docker run -d -P --name tomcat01 tomcat
[root@iZuf6iu3l09b01ael17tbrZ ~]# docker run -d -P --name tomcat02 tomcat
#查看容器内的ip地址
ip addr

image-20200924141629950

image-20200924141832008

#宿主机可以ping通docker容器内部
[root@iZuf6iu3l09b01ael17tbrZ ~]# ping 172.17.0.2
[root@iZuf6iu3l09b01ael17tbrZ ~]# ping 172.17.0.3

image-20200924142246847

image-20200924142315011

原理:

1、我们每启动一个dockers容器,docker就会给docker容器分配一个ip,我们只要安装了docker,就会有一个网卡docker0桥接模式,使用的技术时veth-pair技术!

2、每次启动一个容器测试,就会发现多了一对网卡

3、只要容器删除,对应网桥一对就没了

https://www.cnblogs.com/bakari/p/10613710.html

image-20200924143001546

image-20200924152318914

tomcat03 可以不需要ping tomcat的内网地址,ping tomcat02即可

image-20200924153106164

image-20200924153916628

自定义网络

查看所有的docker网络

image-20200924154044323

网络模式
  • 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 网关

image-20200924154844906

image-20200924155127112

注意 :自己自定义create的网络可以直接ping名字

image-20200924155225214

网络连通

image-20200924160109879


文章作者: Shen Hao
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 Shen Hao !
评论
评论
  目录