本文介绍下,容器之间的网络访问、容器与宿主机之间的网络访问、宿主机上有哪些网络接口。
- lo
local的简写,本地回环地址,127.0.0.1,它代表本地虚拟设备接口,默认被看作是永远不会宕掉的接口 - eth0
ethernet的简写,一般用于以太网接口 - docker0是docker生成的网卡(docker网关)
启动一个tomcat容器,进入容器内ping宿主机ip可以ping通;
docker0已经给这个容器分配了一个ip地址172.17.0.2,
在宿主机上ping容器的ip也是可以的,
再启动一个tomcat容器,
docker0给tomcat2容器分配了一个地址172.17.0.3,
在tomcat2中ping tomcat1的ip地址是通的;
docker分配地址的时候都是用的bridge;host是docker和主机用的是同一个网络;
重新启动tomcat01容器,
vethe35b867@if4657是docker0在宿主机上新建的网络设备,和tomcat01容器里面的eth0@if4658正好是一对。
每创建一个容器,docker0都会给创建一对匹配的网络设备,这个就是桥接。
Tomcat01容器通过路由器访问Tomcat02容器。
小结
- 配对的网络接口,一端连接容器,一端连接网关,这样就可以实现容器之间的访问
- docker使用的是linux的桥接,docker中所有的网络接口都是虚拟的
- 只要容器删除,对应的ip就会被删除