除了环境变量之外,Docker 还在/etc/hosts文件中添加了源容器的主机条目。这是web 容器的条目:
$ docker run -t -i –rm –link db:webdb training/webapp /bin/bash
root@aed84ee21bde:/opt/webapp# cat /etc/hosts
172.17.0.7 aed84ee21bde
<…>
172.17.0.5 webdb 6e5cdeb2d300 db
您可以看到两个相关的主机条目。第一个是web 使用容器 ID 作为主机名的容器条目。第二个条目使用链接别名来引用db容器的 IP 地址。除了您提供的别名之外,链接容器的名称(如果与提供给–link参数的别名不同)和链接容器的主机名也会被添加到/etc/hosts链接容器的 IP 地址。您可以通过以下任何条目 ping 该主机:
root@aed84ee21bde:/opt/webapp# apt-get install -yqq inetutils-ping
root@aed84ee21bde:/opt/webapp# ping webdb
PING webdb (172.17.0.5): 48 data bytes
56 bytes from 172.17.0.5: icmp_seq=0 ttl=64 time=0.267 ms
56 bytes from 172.17.0.5: icmp_seq=1 ttl=64 time=0.250 ms
56 bytes from 172.17.0.5: icmp_seq=2 ttl=64 time=0.256 ms
注意:在示例中,您必须安装,ping因为它最初未包含在容器中。
在这里,您使用该ping命令db通过其主机条目ping容器,该条目解析为172.17.0.5. 您可以使用此主机条目来配置应用程序以使用您的db容器。
如果您重新启动源容器,/etc/hosts链接容器上的文件会自动更新为源容器的新 IP 地址,从而允许链接通信继续。
$ docker restart db
db
$ docker run -t -i –rm –link db:db training/webapp /bin/bash
root@aed84ee21bde:/opt/webapp# cat /etc/hosts
172.17.0.7 aed84ee21bde
<…>
172.17.0.9 db
Ubuntu是一个以桌面应用为主的Linux操作系统。它是一个开放源代码的自由软件,提供了一个健壮、功能丰富的计算环境,既适合家庭使用又适用于商业环境。Ubuntu将为全球数百个公司提供商业支持。 ...
查看全文Docker采取了一种保守的方法来清理未使用的对象(通常称为“垃圾收集”),例如图像,容器,卷和网络:除非您明确要求Docker这样做,否则通常不会删除这些对象。这可能会导致Docker使用额外的磁盘空...
查看全文新浪科技讯 北京时间5月27日晚间消息,据报道,四位知情人士今日透露,亚马逊、微软和谷歌这三大云计算服务提供商,正在竞争波音公司(Boeing)价值10亿美元的云服务合同。 这些...
查看全文新浪科技讯 北京时间5月27日晚间消息,据报道,多位知情人士今日称,继加州、纽约州和华盛顿州之后,马萨诸塞州和宾夕法尼亚州的总检察长也加入到对亚马逊的反垄断调查中。 如今,越来越...
查看全文
您好!请登录