千家信息网

docker跨主机通信怎么实现

发表于:2024-12-12 作者:千家信息网编辑
千家信息网最后更新 2024年12月12日,这篇文章主要讲解了"docker跨主机通信怎么实现",文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习"docker跨主机通信怎么实现"吧!#A主机 192.
千家信息网最后更新 2024年12月12日docker跨主机通信怎么实现

这篇文章主要讲解了"docker跨主机通信怎么实现",文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习"docker跨主机通信怎么实现"吧!

#A主机 192.168.100.120#

在主机A中创建一个子网,范围是10.52.100.2->10.52.100.254

docker network create --subnet=10.52.100.0/24 snake120

运行一个centos7的容器作为客户端

docker run --name centos -dit --network snake120 --ip 10.52.100.2 uhub.service.ucloud.cn/pub021/centos:7.4.1708

增加路由指向目标地址所在的宿主机,-net 目标IP , gw 网关IP ,默认eth0网卡

route add -net 10.52.121.0 netmask 255.255.255.0 gw 192.168.100.121

服务端开放转发规则,用于B主机向A主机通信

iptables -A FORWARD -j ACCEPT

#B主机 192.168.100.121#

在主机B中创建一个子网,范围是10.52.121.2->10.52.121.254

docker network create --subnet=10.52.121.0/24 snake121

运行一个目标服务

docker run --name nginx -dit --network snake121 --ip 10.52.121.10 uhub.service.ucloud.cn/pub021/nginx:1.17.10

服务端开放转发规则,用于A主机向B主机通信

iptables -A FORWARD -j ACCEPT

增加路由指向目标地址所在的宿主机,-net 目标IP , gw 网关IP ,默认eth0网卡 这个是为了可以从B主机向A主机主动发起通信,实现相互通信

route add -net 10.52.120.0 netmask 255.255.255.0 gw 192.168.100.120

感谢各位的阅读,以上就是"docker跨主机通信怎么实现"的内容了,经过本文的学习后,相信大家对docker跨主机通信怎么实现这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是,小编将为大家推送更多相关知识点的文章,欢迎关注!

0