• 注册
  • 云计算 云计算 关注:2 内容:40123

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

  • 查看作者
  • 打赏作者
  • 当前位置: 职业司 > 资讯 > 云计算 > 正文
    • 云计算
    • 链接允许容器相互发现并将有关一个容器的信息安全地传输到另一个容器。设置链接时,您在源容器和接收容器之间创建了一个管道。然后,接收者可以访问有关源的选定数据。要创建链接,请使用–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文件。

      请登录之后再进行评论

      登录

      手机阅读天地(APP)

      • 微信公众号
      • 微信小程序
      • 安卓APP
      手机浏览,惊喜多多
      匿名树洞,说我想说!
      问答悬赏,VIP可见!
      密码可见,回复可见!
      即时聊天、群聊互动!
      宠物孵化,赠送礼物!
      动态像框,专属头衔!
      挑战/抽奖,金币送不停!
      赶紧体会下,不会让你失望!
    • 实时动态
    • 签到
    • 做任务
    • 发表内容
    • 偏好设置
    • 到底部
    • 帖子间隔 侧栏位置:
    • 还没有账号?点这里立即注册