docker 之间相互通讯

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

方式一:通过IP直接访问(不推荐)

查询容器对应的IP命令:

docker inspect 容器 | grep  IPAddress

通过docker容器启动的实例分配的ip地址,直接访问,docker重启时IP会发生变化,所以不推荐

方式二:通过端口映射把docker暴露到外部,直接通过外部ip地址访问(不推荐)

这种方式不安全,只有暴露到外部需要访问才用 如: nginx pethome fastdfs ,对于: redis ,mysql elasticsearch 就不应该暴露,这种方式使我们直接暴露IP端口,在项目中直接写死我们本机的ip加上映射端口,这样我们就不用频繁的更换ip,但是ip也是写死的也不推荐

方式三:通过链接的形式(推荐)

启动容器的时候,给要通信的目标容器使用link指定一个“链接名”,在容器中就可以使用“链接名”和目标容器通信。

具体步骤如下:

docker network Commands:

create            Create a network(创建一个网络)

connect         Connect a container to a network(将容器连接至网络)

disconnect     Disconnect a container from a network(将容器从某网络断开)

inspect           Display detailed information on one or more networks(显示一个或多个网络的详细信息) ls List networks(列出所有网络)

rm                  Remove one or more networks(删除一个或多个网络)

3.1:查看当前网络

docker network ls

docker之间如何通信,Docker,docker,运维,linux

3.2:创建一个bridge的网络(如不加参数,默认创建的就是bridge类型的网络)

docker network create my_net

docker之间如何通信,Docker,docker,运维,linux 

3.3:将容器加入到新建的网络中

3.3.1:启动容器时指定网络

docker run -d --network my_net

3.3.2:将已启动的应用连接至网络

注意 mysql8 是容器名字

docker network connect my_net mysql8

 3.4:查看该网络的详细信息

docker network inspect my_net

docker之间如何通信,Docker,docker,运维,linux

可以看到mysql8已经加入到my_net网络了,如果其他容器需要访问mysql8的话,将容器加入到my_net即可实现容器之间的相互访问

 文章来源地址https://www.toymoban.com/news/detail-516399.html

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

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

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

相关文章

  • 【Docker、运维】如何卸载docker

    卸载Docker的方法取决于你的操作系统。以下是在一些常见操作系统中卸载Docker的指导。确保在执行这些步骤之前,备份任何重要数据,包括Docker容器和镜像,以防万一需要以后恢复。这些步骤将彻底卸载Docker并清除与之相关的大部分数据和配置文件。  1、停止Docker服务 (如

    2024年03月26日
    浏览(58)
  • 【Flink集群RPC通讯机制(二)】创建AkkaRpcService、启动RPC服务、实现相互通信

    RpcService负责创建和启动Flink集群环境中RpcEndpoint组件的RpcServer,且RpcService在启动集群时会提前创建好。AkkaRpcService作为RpcService的唯一实现类,基于Akka的ActorSystem进行封装,为不同的RpcEndpoint创建相应的ActorRef实例。   RpcService主要包含如下两个重要方法。 startServer():用于启动

    2024年02月22日
    浏览(38)
  • 专项技能训练五《云计算网络技术与应用》实训5-6:Docker之间网络互联通信配置

    实验前准备:在5-5环境下继续做。 1. 使用VMware安装CentOS 7虚拟机,将其命名为“Docker”。 2. 安装完虚拟机后,进入虚拟机,修改网络配置(onboot改为yes)并重启网络服务,查看相应IP地址,并使用远程连接软件进行连接。 3. 配置默认镜像yum源。 配置教程详见:[https://blog.cs

    2024年04月25日
    浏览(44)
  • 如何实现docker内部容器之间的端口访问

    Docker 的普及促使众多应用迁至其上部署,得益其诸多优势。然而,相较于传统非 Docker 环境中各应用通过 127.0.0.1:端口 即可轻松互访,Docker 容器若未经端口映射,彼此间端口则无法直接相通。是否存在更优方案以应对这一挑战? 场景简述:alpine-client 与 alpine-server 两容器,前

    2024年04月22日
    浏览(29)
  • Java 中图片与二进制之间如何相互转换?

    1、 下面是一个完整的代码示例。 指定文件路径转为二进制 将网络图片转为二进制 base64 转为图片资源 2、如何判断 base64 图片的格式? 3、将网络图片转为 base64 字符串 4、将 base64 字符串转为图片输出 注:该方法的入参,base64 格式文件不得有 文件头部标识信息,否则会转换

    2024年02月10日
    浏览(48)
  • Linux Zookeeper在Docker 安装与简单通信

    一、在本地计算机上安装Docker 1.安装Docker (安装最新的Docker版本) yum install docker-ce docker-ce-cli containerd.io docker-bulidx-plugin docker-compose-plugin 2.查看Docker版本并启动Docker docker version 安装成功的Docker版本为24.0.6 systemctl start docker Docker 成功启动 二、在Docker中构建映像(image),安装Z

    2024年02月04日
    浏览(42)
  • 使用安全复制命令scp在Windows系统和Linux系统之间相互传输文件

    现在已经有很多远程控制服务器的第三方软件平台,比如FinalShell,MobaXterm等,半可视化界面,使用起来非常方便和友好,两个系统之间传输文件直接拖就行,当然也可以使用命令方式在两个系统之间相互传递。 自动化和脚本化 命令方式可以通过脚本批量传输文件,实现自动

    2024年02月11日
    浏览(45)
  • 组态王和plc之间如何建立通讯?

    这两者之间可以有很多种通讯方式,比如:PROFIBUS、MPI、以太网、DDE、OPC、MODBUS、自由口等,主要还是要看你的PLC选型,以及组网方式。 现在最常见,也最常用的大概要数RS485,MODBUS协议下的无线通讯方式了。我们假定是组态王与西门子S7-200 Smart 之间进行MODBUS 通信。这时组

    2024年02月06日
    浏览(37)
  • linux远程服务器和本地服务器相互之间传输文件方法SSH(乌班图系统)

    提前知道几点 : 1.使用的 MobaXterm软件 2.访问本地、远程服务器,需要账号和密码(远程机器上的 用户名和密码 远程机器的 IP 地址或主机名(在同一子网上))。每次访问需要输入密码,可以搜 Ubuntu SSH 免密登录 3.主要是先要访问本地服务器,才能访问远端服务器,显卡装

    2024年02月15日
    浏览(58)
  • Docker容器与本地文件相互拷贝

    Docker容器中的文件可以与本地进行共享。 1、Docker容器中的文件拷贝至本地 2、本地文件拷贝至容器 注意: 1、此命令是在容器外使用(shell或cmd)。 2、两个命令中容器 ID可以与容器name相互替换使用。 如下图所示,CONTAINER ID和NAMES 都可以在命令中使用。

    2024年02月11日
    浏览(38)

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

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

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

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

二维码1

领取红包

二维码2

领红包