聊聊docker跨主机之间容器通信问题
目录
- 一、环境信息
- 二、具体实践
- 1.在testa主机上创建docker桥接网络
- 2.在testb主机上创建docker桥接网络
- 3.在testa主机中你自定义的网段选取任意IP地址作为你要启动容器IP
- testb主机中你自定义的网段选取任意IP地址作为你要启动容器IP
- 4.进入testa主机中的docker
- 进入testb主机中的docker
- 5. 配置路由表
- 添加路由规则
- 6测试跨主机容器互ping
一、环境信息
| 主机名 | 宿主机IP | 容器分配网段 | 启动容器的IP |
|---|---|---|---|
| testa | 192.168.1.105 | 172.172.0.0/24 | 172.172.0.10 |
| testb | 192.168.1.106 | 172.172.1.0/24 | 172.172.1.10 |
二、具体实践
1.在testa主机上创建docker桥接网络
docker network create --subnet=172.172.0.0/24 docker-br0
2.在testb主机上创建docker桥接网络
docker network create --subnet=172.172.1.0/24 docker-br0
备注:这里选取了172.172.0.0网段,也可以指定其他任意空闲的网段,docker-br0为自定义网桥的名字,可自己任意取名。
注意:这里子网掩码要使用255.255.255.0也就是IP后面的那个24,因为后面要使用iptables配置路由表,我之前使用255.255.0.0 无法配置.所以这里配置成24.\
创建网桥之后,使用ifconfig查看 会多出一个网桥,该网桥在docker启动或者重启之后,会自动显示出来。永久的,可以使用docker network rm docker-br0 移除网桥。
3.在testa主机中你自定义的网段选取任意IP地址作为你要启动容器IP
docker run -i -d --net docker-br0 --ip 172.172.0.10 --name test1 3bee3060bfc8 /bin/bash
testb主机中你自定义的网段选取任意IP地址作为你要启动容器IP
docker run -i -d --net docker-br0 --ip 172.172.1.10 --name test2 3bee3060bfc8 /bin/bash
4.进入testa主机中的docker
docker exec -it test1 /bin/bash
进入testb主机中的docker
docker exec -it test2 /bin/bash
5. 配置路由表
添加路由规则
ip route add 对方容器所在的ip网段/子网掩码 via 对方虚拟机ip dev 通过哪个网卡通信
testa主机中
ip route add 172.172.1.0/24 via 192.168.1.106 dev eno16777736
testb主机中
ip route add 172.172.0.0/24 via 192.168.1.105 dev eno16777736 \
添加完成之后,可以使用 route命令 查看添加之后的规则,也可以使用 ip route del 172.172.1.0/24 移除路由规则
6测试跨主机容器互ping
栏 目:其它服务器
下一篇:基于云服务MRS构建DolphinScheduler2调度系统的案例详解
本文标题:聊聊docker跨主机之间容器通信问题
本文地址:https://zz.feitang.co/server/31027.html
您可能感兴趣的文章
- 12-20Kubernetes中使用临时容器进行故障排查的方法
- 12-20Nginx设置HTTPS的方法步骤
- 12-20二进制方式安装 Kubernetes1.18.3版本实现脚本
- 12-20Nginx工作模式及代理配置的使用细节
- 12-20ZooKeeper分布式协调服务设计核心概念及安装配置
- 12-20Kubernetes部署可视化地图的十个步骤
- 12-20关于docker清理Overlay2占用磁盘空间的问题(亲测有效)
- 12-20Docker compose配置文件写法及命令使用示例
- 12-20openwrt安装docker并启动的操作方法
- 12-20云原生Kubernetes初始化容器Init使用教程


阅读排行
推荐教程
- 12-07一文教你怎么选择Tomcat对应的JDK版本
- 12-07新版Eclipse集成Tomcat时找不到server选项的解决方法
- 12-06IIS7 应用程序池自动回收关闭的解决方案
- 12-05Windows Server 2019安装VMware
- 12-05Windows服务器默认IE浏览器无法下载文件的解决方法
- 12-05Docker安装Jenkins全过程
- 12-19Zabbix SAML SSO 登录绕过漏洞的操作流程
- 12-15Docker-Compose搭建Spark集群的实现方法
- 12-14Docker Desktop无法正常启动解决(failed to start...)
- 12-14k8s 与docker空间使用分析与清理方法





