暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

docker容器间实现单向通信和双向通信

841
  • docker容器间实现单向通信

    说明:我们这里的通信只是说的两个容器各自所在的网络能否访问【即能否ping通】

    单向通信:容器A的网络可以访问容器B的网络但容器B的网络不能访问容器A的网络

    存在的意义:比如在tomcat和mysql的场景下,在实际项目中是只有tomcat访问mysql,mysql不能访问tomcat。


    传统通过配置ip地址通信存在的问题:


容器间的单向通信就是不以ip作为标识容器的唯一凭证,而是通过取别名来实现。


具体操作如下:

    启动mysql时指定别名为mydb
    docker run --name mydb -e MYSQL_ROOT_PASSWORD=abc123456 -d mysql:5.7


    启动tomcat时通过【--link mybd】指向名为mybd的容器
    docker run -itd --name tomcat1 --link mydb tomcat:tag


    这样后续即使数据库容器挂了,只需要重启一个别名为mydb的数据库容器即可。


    • docker容器间实现双向通信


        双向通信:容器A所在的网络可以访问容器B所在的网络,同时容器B所在的网络也可以访问容器A所在的网络。

        

    通过创建新的网桥实现容器间的双向通信

      创建一个新的网桥:docker network create -d bridge my_bridge
      启动第一个容器:docker run -itd --name tomcat centos:7
      启动第二个容器:docker run -itd --name redis centos:7
      把第一个容器加入网桥:docker network connect my_bridge tomcat
      把第二个容器加入网桥:docker network connect my_bridge redis

      查看docker的网络模式

        docker network ls




        关于leetcode算法训练营:

            加我微信号私聊参加训练营~

        本人用c++刷了800道左右的算法,java语言刷了600道左右的算法题,并对这些题做了详细的个人总结。本科期间系统学习了数据结构与算法课程,同时考研过程中写完了率辉主编的《2020年数据结构高分笔记》和《数据结构1000题》,看完的视频包括《mooc浙大数据结构国家精品课程》和《王道考研408数据结构课程》,《王道2019年算法题讲解视频》,最终以初试专业第三名进入了北理工软件工程专业。熟悉并掌握常见的数据结构,比如链表、数组、树、图、队列、堆栈等等,精通数据结构教材中的所有算法,比如常见的遍历算法、动态规划,递归,回溯,剪枝,并查集,最短路径,拓扑排序等,所以快加入训练营吧,我们一起进步

        奔跑的小梁,公众号:梁霖编程工具库我决定了,算法文档开源!!


        文章转载自梁霖编程工具库,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

        评论