Docker-容器互联--link

1. 单纯的通过ping命令无法实现容之间通过容器名互联

[root@QK ~]# docker ps
CONTAINER ID   IMAGE      COMMAND                  CREATED        STATUS        PORTS                                         NAMES
ca716626930c   tomcat     "catalina.sh run"        47 hours ago   Up 47 hours   0.0.0.0:49154->8080/tcp, :::49154->8080/tcp   tomcat02
70b4e9694156   tomcat     "catalina.sh run"        47 hours ago   Up 47 hours   0.0.0.0:49153->8080/tcp, :::49153->8080/tcp   tomcat01
f47273774542   mytomcat   "/bin/sh -c '/usr/lo…"   4 days ago     Up 4 days     0.0.0.0:9090->8080/tcp, :::9090->8080/tcp     mytomcat06
[root@QK ~]# docker exec -it tomcat01 ping tomcat02
ping: tomcat02: Name or service not known
[root@QK ~]# 

2. 在容器启动时通过--link,就可以实现容器名互联,但也只是单向的

docker run -d -P --name tomcat03 --link tomcat02 tomcat
[root@QK ~]# docker run -d -P --name tomcat03 --link tomcat02 tomcat
8988587234d5467fd4a109d8387eccb5160075864207dfc9865701b84c269ac7
[root@QK ~]# docker exec -it tomcat03 ping tomcat02
PING tomcat02 (172.17.0.5) 56(84) bytes of data.
64 bytes from tomcat02 (172.17.0.5): icmp_seq=1 ttl=64 time=0.117 ms
64 bytes from tomcat02 (172.17.0.5): icmp_seq=2 ttl=64 time=0.069 ms
64 bytes from tomcat02 (172.17.0.5): icmp_seq=3 ttl=64 time=0.067 ms
64 bytes from tomcat02 (172.17.0.5): icmp_seq=4 ttl=64 time=0.062 ms
64 bytes from tomcat02 (172.17.0.5): icmp_seq=5 ttl=64 time=0.062 ms
^C
--- tomcat02 ping statistics ---
5 packets transmitted, 5 received, 0% packet loss, time 183ms
rtt min/avg/max/mdev = 0.062/0.075/0.117/0.022 ms
[root@QK ~]# docker exec -it tomcat02 ping tomcat03
ping: tomcat03: Name or service not known

3. 查看tomcat03的hosts

[root@QK ~]# docker exec -it tomcat03 cat /etc/host
cat: /etc/host: No such file or directory
[root@QK ~]# 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.5	tomcat02 ca716626930c
172.17.0.6	8988587234d5
[root@QK ~]# 
[root@QK ~]# docker exec -it tomcat02 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.5	ca716626930c
[root@QK ~]# 

4. 说明--link,是在tomcat03的hosts文件增加了tomcat02的映射,映射也是单向的

5. 如果需要双向映射,必须容器之间互相--link

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值