这篇文章主要讲解了“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跨主机通信怎么实现这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是编程之家,小编将为大家推送更多相关知识点的文章,欢迎关注!
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。