前言
简单介绍一下docker 网络。
正文
使用ip addr。
可以看到网络。
有一个虚拟网卡:
那么基本上容器就处于这样的模式了。
那么也就是所有容器都在同一网关下面了。
那么问题来了,理论上容器之间应该是可以互相访问的。
启动容器:
docker run -d -p 8081:8080 --name tomcat01 tomcat:9.0
然后在容器里面执行addr:
ip addr
那么启动另外一个容器。
docker run -d -p 8082:8080 --name tomcat02 tomcat:9.0
然后用ipaddr 查看。
然后容器2去访问容器1.
看到吧,其实他们之间是可以访问的。大致原理是这样的,因为最近在整理这块的原理,所以也不会发出来。
下面介绍一下容器互联机制--link。
可以看到上面不能连通,那么可以使用--link进行连通。
然后你会发现:
然后你发现:
tomcat02 还是ping不了 tomcat03.
那么是为什么嗯?
进入tomcat3里面看下这个:
里面加了host。
那么问题来了,docker 是怎么知道tomcat02 是172.17.0.3的呢?
通过docker network ls 进行查看:
然后进去看一下:
docker network inspect 1a2541e5b75d
里面记录了我们tomcat02的信息。
那么另外一个问题来了。如果我们把tomcat02删除,然后再创建,看下是否会自动修改host呢?
首先我删除了tomcat02后,那么tomcat03我就进不去了。
结
下一节自定义网络