推广 热搜: 京东  联通  iphone11  摄像头  企业存储  iPhone  XSKY  京东智能采购  网络安全  自动驾驶 

云计算核心技术Docker教程:Docker 跨链接通信

   日期:2021-10-14     来源:TechWeb编译    作者:itcg    浏览:462    我要评论    
导读:链接允许容器相互发现并将有关一个容器的信息安全地传输到另一个容器。

链接允许容器相互发现并将有关一个容器的信息安全地传输到另一个容器。设置链接时,您在源容器和接收容器之间创建了一个管道。然后,接收者可以访问有关源的选定数据。要创建链接,请使用--link 标志。首先,创建一个新容器,这次是一个包含数据库的容器。

$ docker run -d --name db training/postgres

这将创建一个db从training/postgres 映像调用的新容器,其中包含一个 PostgreSQL 数据库。

现在,您需要删除web之前创建的容器,以便将其替换为链接的容器:

$ docker container rm -f web

现在,创建一个新web容器并将其与您的db容器链接。

$ docker run -d -P --name web --link db:db training/webapp python app.py

这会将新web容器与db您之前创建的容器链接起来。该--link标志采用以下形式:

--link:alias

name我们链接到的容器的名称在哪里,是alias链接名称的别名。该别名很快就会使用。该--link旗还采取以下形式:

--link

在这种情况下,别名与名称匹配。您可以将前面的示例编写为:

$ docker run -d -P --name web --link db training/webapp python app.py

接下来,使用以下命令检查链接的容器docker inspect:

$ docker inspect -f "{{ .HostConfig.links }}" web

[/db:/web/db]

您可以看到web容器现在已链接到db容器 web/db。这允许它访问有关db容器的信息。

那么链接容器实际上有什么作用呢?您已经了解到链接允许源容器向接收容器提供有关其自身的信息。在我们的示例中,收件人web可以访问有关源 的信息db。为此,Docker 在容器之间创建了一个安全隧道,不需要在容器外部公开任何端口;当我们启动 db容器时,我们没有使用-P或-p标志。这是链接的一大好处:我们不需要向网络公开源容器,这里是 PostgreSQL 数据库。

Docker 通过两种方式向接收容器公开源容器的连接信息:

1.环境变量,

2.更新/etc/hosts文件。

 
反对 0举报 0 收藏 0 打赏 0评论 0
 
更多>同类资讯
0相关评论

头条阅读
推荐图文
相关资讯
网站首页  |  物流配送  |  关于我们  |  联系方式  |  使用协议  |  版权隐私  |  网站地图  |  排名推广  |  广告服务  |  积分换礼  |  RSS订阅  |  违规举报  |  京ICP备14047533号-2
Processed in 0.206 second(s), 11 queries, Memory 1.48 M