docker(六)容器间通信

本文介绍了Docker容器间通信的三种方式:IP通信、利用Docker DNS Server以及joined容器。通过IP通信需要容器在同一网络中,Docker DNS Server允许通过容器名进行通信,而joined容器则共享网络栈,直接通过localhost通信。
摘要由CSDN通过智能技术生成

docker(六)容器间通信

容器之间可以通过IP Docker DNS Server 或joined容器三种方式通信

ip通信

从前面的例子可以得出一个结论:两个容器要能通信,必须有属于同一个网络的网卡 具体做法就是在容器创建的时候通过 --network 指定相应的网络 或者通过docker network connect 将现有的容器加入到指定的网络
#参考之前的rhel7-up和busybox的例子

##连接到网络
docekr network connect my-net my-nginx
将一个容器的容器 my-nginx连接到一个正在运行的网络 my-net上

#容器脱离网络
docker network disconnect my-net my-nginx
将容器my-nginx从网络my-net上断开连接。

Docker DNS Server

通过IP访问容器虽然满足了通信的需求,但是还是不够灵活,因为在部署应用之前可能无法确定IP 部署之后再指定要访问的IP会比较麻烦
对于这个问题,可以通过docker 自带的DNS服务解决
从docker1.10版本开始,docker daemon实现了一个内嵌的DNS server,使容器可以直接通过“容器名”通信,方法很简单,只要在启动时用 --name为容器命名就可以了
bridge模式

[root@server7 ~]# docker run -it --network=my_net2 --name=bbox1 busybox
/ # ping bbox2
PING bbox2 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值