Docker 跨主机容器间相互访问的实现
第一步:创建自定义网络
docker network create --subnet=172.18.0.0/24 docker-br0
备注:这里选取了172.18.0.0网段,也可以指定其他任意空闲的网段,docker-br0为自定义网桥的名字,可自己任意取名。
注意:这里子网掩码要使用255.255.255.0也就是IP后面的那个24,因为后面要使用iptables配置路由表,我之前使用255.255.0.0 无法配置.所以这里配置成24.
创建网桥之后,使用ifconfig查看 会多出一个网桥,该网桥在docker启动或者重启之后,会自动显示出来。永久的,可以使用docker network rm docker-br0 移除网桥。

第二步:在你自定义的网段选取任意IP地址作为你要启动容器IP
docker run -itd --name my-centos3 --network myNetwork --privileged=true --ip 172.18.0.6 -p 5000:22/sbin/init
第三步:跨主机容器互访:
第四步:在192.168.1.106虚拟机上,给容器绑定固定ip, 按照之前 第一步到 第三步.
第五步:在两个容器中互相访问,发现跨主机容器互访,并不能ping通。


第六步:配置路由表
#添加路由规则 ip route add 对方容器所在的ip网段/子网掩码 via 对方虚拟机ip dev 通过哪个网卡通信
如:ip route add 172.18.0.0/16 via 192.168.1.24 dev ens33
添加完成之后,可以使用 route命令 查看添加之后的规则,也可以使用 ip route del 172.172.1.0/24 移除路由规则
在192.168.1.24 和 192.168.1.26虚拟机上,分别添加对应的路由规则!
192.168.1.24: ip route add 172.19.0.0/24 via 192.168.1.26 dev ens33
192.168.1.26: ip route add 172.18.0.0/24 via 192.168.1.24 dev ens33
第七步:在两个容器中互相访问,发现可以实现跨主机容器互相ping通了。


到此这篇关于Docker 跨主机容器间相互访问的实现的文章就介绍到这了,更多相关Docker 跨主机容器间相互访问内容请搜索以前的文章或继续浏览下面的相关文章希望大家以后多多支持!
栏 目:其它服务器
下一篇:Docker搭建Calibre-Web在线书库的实现示例
本文标题:Docker 跨主机容器间相互访问的实现
本文地址:https://zz.feitang.co/server/30808.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空间使用分析与清理方法





