docker容器通信参数使用及link参数介绍(docker 容器通信)

admin3年前网络知识126

内容介绍
  • link机制介绍
  • link使用
    • 格式
  • 1、link 参数作用
    • 2、命令格式
      • 3、link原理
        • 4、测试案例
          • 5、link参数注意事项

            link机制介绍

            同一个宿主机上的多个docker容器之间如果想进行通信,可以通过使用容器的ip地址来通信,也可以通过宿主机的ip加上容器暴露出的端口号来通信,前者美国高防vps会导致ip地址的硬编码,不方便迁移,并且容器重启后ip地址会改变,除非使用固定的ip,后者的通信方式比较单一,只能依靠监听在暴露出的端口的进程来进行有限的通信。通过docker的link机制可以通过一个name来和另一个容器通信,link机制方便了容器去发现其它的容器并且可以安全的传递一些连接信息给其它的容器。docker run --link可以用来链接2个容器,使得源容器(被链接的容器)和接收容器(主动去链接的容器)之间可以互相通信,本质是接收容器的/etc/hosts会添加关于源容器的dns解析,接收容器可以通过容器名/容器id/alias访问源容器,并且接收容器可以获取源容器的一些数据,如源容器的环境变量。该机制的局限是dns解析只是单项的,接收容器只能dns解析源容器,而源容器无法dns解析接收容器。 

            link使用

            格式


            --link <name or id>:alias

            其中,name和id是源容器的name和id,alias是源容器在link下的别名

            1、link 参数作用

            同一个宿主主机上的多个docker容器之间如果需要进行通信,第一种最容易想到的方式就是使用容器自身的ip地址、宿主主机的ip+容器暴露出的端口号来通信,我们知道默认情况下docker重新run后,对应的IP地址就会改变,这样如果两个容器之间通信就会变得非常麻烦,每次都要修改通信的IP地址。这个时候 --link参数就派上大用场了,它会给要链接的容器设定一个通信的别名,即使重启后IP地址发生了改变,依然可以正常通信。

            2、命令格式

            docker run -d --name myname--link toname:alisname -p 本地端口:容器端口 镜像名称

            参数说明:

            -- name:新容器名词

            -- link:目标容器名称:别名

            -p: 本地端口:容器端口

            3、link原理

            --link的原理就是在/etc/hosts里面添加了一个alias的名称

            4、测试案例

            首先启动一个tomcat01的容器

            docker run -itd --name tomcat01 -p 8100:8080 tomcat:8.5.38

            docker ps 获取容器的id d92f947ea54f

            正文内容:

            获取单个容器 ip

            docker inspect -f '{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}' d92f947ea54f

            正文内容:

            启动一个nginx容器设置与tomcat01连通

            docker run -itd --name nginx01 --link tomcat01 nginx

            进入容器内部查看 etc/hosts配置文件

            docker exec -it nginx01 /bin/bash #进入容器内部apt update && apt install -y iproute2 # 安装ping命令cat /etc/hosts #查看配置文件127.0.0.1 localhost::1 localhost ip6-localhost ip6-loopbackfe00::0 ip6-localnetff00::0 ip6-mcastprefixff02::1 ip6-allnodesff02::2 ip6-allrouters172.17.0.4 tomcat01 d92f947ea54f172.17.0.6 70aa4c7dde72

            测试nginx01 ping tomcat01

            docker exec -it nginx01 ping tomcat01 PING tomcat01 (172.18.0.2): 56 data bytes64 bytes from 172.18.0.2: icmp_seq=0 ttl=64 time=0.102 ms64 bytes from 172.18.0.2: icmp_seq=1 ttl=64 time=0.093 ms64 bytes from 172.18.0.2: icmp_seq=2 ttl=64 time=0.110 ms64 bytes from 172.18.0.2: icmp_seq=3 ttl=64 time=0.073 ms

            5、link参数注意事项

            • 使用link参数建立的容器所链接的主机需要处于运行状态
            • 所链接的容器也必须是运行状态
            • 使用link选项链接的主机ip不需要固定,因为每次新建容器都会检查所链接容器的ip,并在/etc/hosts里生成新的alias 名称对应的ip

            到此这篇关于docker容器通信参数 --link参数介绍的文章就介绍到这了,更多相关docker容器通信link内容请搜索站长源码网以前的文章或继续浏览下面的相关文章希望大家以后多多支持站长源码网!

            本文从互联网转载,来源地址:www.inhv.cn/247451.html,原作者保留一切权利,若侵权或引用不当,请联系测速网(inhv.cn)删除。【测速网,优质云服务器提供商】

            《docker容器通信参数使用及link参数介绍(docker 容器通信)》来自互联网同行内容,若有侵权,请联系我们删除!

            免责声明:本文内容来自用户上传并发布,站点仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。请核实广告和内容真实性,谨慎使用。

            相关文章

            2026好听个性的微信名字-高雅大气有内涵的微信名

            2026好听个性的微信名字-高雅大气有内涵的微信名

            2026年最新的微信个性网名风格多样,您可以根据不同喜好进行选择1。这些网名涵盖了古风诗意、简约治愈、招财旺运等多种风格,并且部分网名支持添加Emoji表情,以满足个性化的表达需求。 以下是为您整合...

            抖音基础播放量是多少

            抖音基础播放量是多少没有具体规定,因为每个用户情况是不一样的。抖音(Tik Tok)是由今日头条推出的一款短视频分享APP,于2016年9月上线,是一个专注于年轻人音乐短视频创作分享的社区平台。抖音应...

            拼多多商家版如何查看购物车 拼多多商家版查看购物车方法

            拼多多商家版如何查看 购物 车?拼多多商家版提供的购物 服务 都是很全面的,用户们在使用软件时可以自定义管理自己的购物车,所有的商品都能任意添加和删除的,,下面IT百科小编就为大家分享拼多多商家版查看...

            win+l是什么快捷键

            win+l是对电脑屏幕进行锁定操作的快捷键,win就是键盘上的windows徽标键,位于ctrl键与alt键之间。“WIN+L”就是按住WIN键不放再按L键。快捷键(shortcut keys),即热...

            怎么选择靠谱的域名服务商(第三方服务商赶跟卖可靠吗)

            1、怎么选择靠谱的域名服务商在当今互联网时代,域名已经成为了企业网站、个人博客以及电商平台的重要入口。而在购买域名时,选择一家靠谱的域名服务商也显得极为重要。以下是几个选择靠谱域名服务商的建议:要注意...

            win7怎么设置自动关机

            大家好,上述问题将由我为大家进行解答。要让电脑自动定时关机,省去等待的时间,那么win7电脑要怎么设置自动关机呢,针对这个问题,小编就给大家分享一下win7系统设置自动关机的方法如下。方法一:1、按“...