Docker系列(27)- 容器互联--link
2024-08-25 12:40:05
思考
思考一个场景,我们编写了一个微服务,database url=IP:,项目不重启,数据库ip换掉了,我们希望可以处理这个问题,可以使用名字来进行访问容器吗
实践
[root@localhost ~]# docker exec -it tomcat02 ping tomcat01
ping: tomcat01: Name or service not known
# 如何可以解决呢?
# 通过 --link 即可以解决了网络连通问题
[root@localhost ~]# docker run -d -P --name tomcat03 --link tomcat02 tomcat
9e655559aba4b48c79d775fa8dd995cc7342578b8c21864200eeb2cf9349b231
[root@localhost ~]# docker exec -it tomcat03 ping tomcat02
PING tomcat02 (172.17.0.4) 56(84) bytes of data.
64 bytes from tomcat02 (172.17.0.4): icmp_seq=1 ttl=64 time=0.148 ms
64 bytes from tomcat02 (172.17.0.4): icmp_seq=2 ttl=64 time=0.067 ms
64 bytes from tomcat02 (172.17.0.4): icmp_seq=3 ttl=64 time=0.067 ms
64 bytes from tomcat02 (172.17.0.4): icmp_seq=4 ttl=64 time=0.059 ms
# 反向可以ping通吗?
[root@localhost ~]# docker exec -it tomcat02 ping tomcat03
ping: tomcat03: Name or service not known
探究:inspect
# 查看host 配置,在这里发现
[root@localhost ~]# docker exec -it tomcat03 cat /etc/hosts
127.0.0.1 localhost
::1 localhost ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
172.17.0.4 tomcat02 fc32be6aff5c
172.17.0.5 9e655559aba4
总结:
- --link就是在hosts配置中增加了目标对象的网络信息,是单向的
- 不建议使用--link,推荐使用自定义网络
最新文章
- Oracle Hang分析--转载
- Linq的TakeWhile误用
- 从零开始HTML(一 2016/10/17)
- 纸上谈兵:表(list)
- mysql登录和连接 权限
- 【读书笔记】读《编写高质量代码—Web前端开发修炼之道》 - JavaScript原型继承与面向对象
- divcss5布局
- Windows Server 2012 R2 设置
- 学习理论之正则化(Regularization)与模型选择
- Atom编辑器入门到精通(四) Atom使用进阶
- Js 中json简单处理
- 【HDOJ】2602 Bone Collector
- opencv-jni -调试出错taking address of temporary [-fpermissive]
- NSURLRequest POST方式请求服务器示例
- 自定义checkbox/radio
- canvas转图片中的文字自动换行
- 【iCore4 双核心板_uC/OS-II】例程七:互斥信号量
- 微服务-开发框架之springboot by 大雄daysn
- mac系统如何在桌面新建文件(夹)
- Django总叙(转)