思考一个场景,我们编写了一个微服务,当中数据库的配置database url=ip:3306,我们想要项目不重启,将数据库ip换掉(停掉容器,重启),我们希望可以用名字来进行访问容器
[root@master ~]# docker exec -it tomcat02 ping tomcat01 ping: unknown host tomcat01 # 如何可以解决呢? [root@master ~]# docker exec -it tomcat02 ping tomcat01 ping: unknown host tomcat01 # 通过--link既可以解决了网络连通问题 docker run -d -P --name tomcat03 --link tomcat02 tomcat:8.0 docker exec -it tomcat03 ping tomcat02 # 反向可以ping通吗? [root@master ~]# docker exec -it tomcat02 ping tomcat03 ping: unknown host tomcat03
探究:inspect
其实tomcat03 就是在本地配置了tomcat02的配置
# 查看tomcat03的hosts配置,在这里发现 docker exec -it tomcat03 cat /etc/hosts
–link 就是我们在hosts配置中增加了一个tomcat02的映射!
我们现在已经不建议使用–link了!
我们需要的是自定义网络,不使用docker0!
docker0问题:他不支持容器名连接访问!



