consul实现跨容器互通
需要用到配置管理中心consul,实现跨容器互通
一、准备环境
consul管理中心(IP:192.168.1.99)
docker pull progrium/consul docker run -d -p 8500:8500 -name consul progrium/consul -server -bootstrap
第一台宿主机:(IP:192.168.1.100)
vim /etc/docker/daemon.json 增加: { "cluster-store":"consul:192.168.1.99:8500", "cluster-advertise":"192.168.1.100:2375" } 保存后: systemctl daemon-reload #重载配置 systemctl restart docker #记得关闭防火墙,selinux之类的。
第二台宿主机:(IP:192.168.1.200)
vim /etc/docker/daemon.json 增加: { "cluster-store":"consul:192.168.1.99:8500", "cluster-advertise":"192.168.1.200:2375" } 保存后: systemctl daemon-reload #重载配置 systemctl restart docker #记得关闭防火墙,selinux之类的。
二、开始配置
1.第一台宿主机:(IP:192.168.1.100)
创建网络: docker network create -d overlay my_net1
验证是网络否创建同步: docker network ls
,到第二台宿主机执行同样命令,看看my_net1
网络是否同步过去。
运行容器
docker run -it --rm --network my_net1 nginx
2.第二台宿主机:(IP:192.168.1.200)
运行容器
docker run -it --rm --network my_net1 nginx
三、验证
进入容器终端,Ping对端容器IP,一般就可以通信了。
停留在世界边缘,与之惜别