docker多个容器内部通信

这篇具有很好参考价值的文章主要介绍了docker多个容器内部通信。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

docker很方便的给我们用容器的方式解决了服务隔离运行,同时也产生了一个需要内部网络多个容器之间发生通讯,其实比较简单就可以实现,方式为:创建一个网络组、然后需要内部通讯的容器都加入到这个网络组中,然后这写加入的容器都是同一个网段,就可以通讯了。

1、创建一个网络组

[root@ecs-b3bf-0225793 ~]# 
[root@ecs-b3bf-0225793 ~]# docker network create --driver bridge mq-bridge
5e9af94588646f049559ba049facc50c1c8b3c8a3d06f7cd8c44df5908bf0125
[root@ecs-b3bf-0225793 ~]# 
[root@ecs-b3bf-0225793 ~]# 
[root@ecs-b3bf-0225793 ~]# docker network ls
NETWORK ID          NAME                DRIVER              SCOPE
6f66df95e8ce        app_net             bridge              local
95746a181dfb        bridge              bridge              local
9c82ac52a997        docker_default      bridge              local
d86404029f06        docker_work         bridge              local
8d350f2a2209        host                host                local
5e9af9458864        mq-bridge           bridge              local
2f1631ba396f        none                null                local
[root@ecs-b3bf-0225793 ~]#

如上,我们的网络组就可以使用了:mq-bridge

2、容器启动时指定此容器就可以

[root@ecs-b3bf-0225795 conf]# 
[root@ecs-b3bf-0225795 conf]# docker run -d -p 10911:10911 -p 10909:10909 \
-v /home/docker/rocketmq/logs:/root/logs \
-v /home/docker/rocketmq/store:/root/store \
-v /home/docker/rocketmq/conf/broker.conf:/opt/rocketmq-latest/conf/broker.conf \
--name rmqbroker --link rmqnamesrv:namesrv --net=mq-bridge \
-e "NAMESRV_ADDR=namesrv:9876" \
-e "MAX_POSSIBLE_HEAP=200000000" \
rocketmqinc/rocketmq:latest sh mqbroker 
3046c85168b8ee4e6f61c68412c7495c596b4c366eb9091d62205ad5f97eef34
[root@ecs-b3bf-0225795 rocketmq]# 

如上最重要的信息:--net=mq-bridge

3、查看我们的网络组中容器的IP

[root@ecs-b3bf-0225795 conf]# 
[root@ecs-b3bf-0225795 conf]# docker inspect mq-bridge

docker多个容器内部通信

 ok,多个容器之间的IP就有了,具体再改相应的IP就可以内网通信了文章来源地址https://www.toymoban.com/news/detail-508064.html

到了这里,关于docker多个容器内部通信的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Docker容器内部无法访问外网原因之一

    部署了一个Docker环境,宿主机可以访问Internet,启动了一个容器发现容器里的服务无法访问Internet,Docker网络使用的是桥接(bridge)模式。 使用Docker桥接模式启动的容器,宿主机如果可以访问外网,按理来说Docker容器本身也可以访问外网的。其原理:容器网卡与宿主机的dock

    2023年04月25日
    浏览(54)
  • Docker启动多个mysql容器

    原有镜像mysql5.7.41,已启动mysql容器端口3306,再启动一个端口号为3400的容器。指定用户名root,mima ,密码123456 命令: docker run --name zjfz-mysql -e MYSQL_ROOT_PASSWORD=123456 -p 3400:3306 -d mysql 名字:zjfz-mysql 端口号:3400 效果:使用navicat连接刚指定端口的mysql,连接成功。 1、创建其他用户

    2024年02月06日
    浏览(51)
  • docker一个容器内部署多个服务

    原因是,我有一个springBoot服务需要写入httpd的目录,然后httpd提供链接给别人下载。之前的方法是,httpd和springBoot各一个容器,但是我们将镜像是部署在腾讯云上的,腾讯云会自动对每个容器分离不同的虚拟机,这样就导致,他们不能共享目录。所以只能写在一个容器内。 思

    2023年04月10日
    浏览(34)
  • ubuntu 如何在docker容器内部查看允许使用的cpu详细信息以及管理员是否限制了docker容器可使用的cpu核心范围

    如题。最近在跑强化学习代码,发现自己的代码跑的好慢好慢好慢,怀疑是可使用的cpu数量被管理员限制了,于是去学习了一下如何查看docker容器中cpu的相关信息。 这将输出关于系统处理器的详细信息,包括每个 CPU 的数量、型号和速度。 在 Docker 容器中,默认情况下,可以

    2024年02月13日
    浏览(48)
  • 【Docker】Docker容器实战部署多个Nginx实现负载均衡和高可用

    前言 Docker下部署多个Nginx进行负载均衡,我这次实操的思路是使用三个Nginx。其中一个Nginx起负载均衡的作用,叫做 nginx-lb ,单独一个配置文件。另外2个Nginx起真正的转发作用,叫做 nginx1 和 nginx2 ,他们共享同一个配置文件,思路图如下。 接下来我们直接进行实操演示。 下载

    2024年01月16日
    浏览(40)
  • Docker容器运行多个php,一个正常另一个报502

    问题是解决了,但是并不知道问题出在哪儿 docker-compse.yml 文件并没有什么改动 在解决这个问题的过程中多次重新打包镜像配置运行容器,没有任何效果,最多就是原本正常的站点也变得不可用 我在看nginx的配置时,发现可以在 location 里面将多个版本的php都配置上路径 我想是

    2024年01月20日
    浏览(61)
  • 【Docker】docker中容器之间通信方式

    点击跳转:Docker安装MySQL、Redis、RabbitMQ、Elasticsearch、Nacos等常见服务全套(质量有保证,内容详情) 容器重启后,ip会发生变化。通过容器ip访问不是一个好的方案。 通过宿主机的 ip:port 访问,只能依靠监听在暴露出的端口的进程来进行有限的通信。 容器之间通信不能用 l

    2024年02月15日
    浏览(46)
  • Docker(四)、容器间通信

    1、模拟tomcat服务器:–name 为新产生的容器命名 docker run -d --name web tomcat 2、模拟数据库 -it建立交互模式,centos镜像名称 ,即创建一个基础的centos容器【centos容器创建完以后默认是自动退出的状态,想让当前容器创建完保持运行的状态,加上-it交互模式和访问 /bin/bash ,才能

    2024年02月07日
    浏览(32)
  • Docker宿主机复制(单个文件夹/多个文件/单个文件)到容器

    我的JPEGImages里面包含了多张图片,下面的指令将宿主机JPEGImages目录下的所有文件和子目录复制到7a7608e0bf84容器的/home/PaddleSeg/input/目录下 使用多行docker cp指令 docker cp 容器ID或名称:容器源路径 宿主机目标路径 docker cp 宿主机目标路径 容器ID或名称:容器源路径

    2024年02月08日
    浏览(51)
  • Docker 容器之间的互相通信

    步骤一:创建自定义网络 首先,我们需要创建一个自定义网络,以便容器可以连接到这个网络上,从而实现互相通信。在命令行中执行以下命令: 这将创建一个名为 ddz 的自定义网络。 步骤二:运行第一个容器并连接到自定义网络 现在,我们可以运行第一个容器,并将其连

    2024年01月16日
    浏览(42)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包