docker容器互通 docker overlay实现跨主机的容器互通的方法
danceghost 人气:0想了解docker overlay实现跨主机的容器互通的方法的相关内容吗,danceghost在本文为您仔细讲解docker容器互通的相关知识和一些Code实例,欢迎阅读和指正,我们先划重点:docker容器互通,docker容器跨主机,docker,overlay容器,下面大家一起来学习吧。
环境说明
IP | 注册中心 |
---|---|
192.168.20.5 | consule |
192.168.20.6 | |
192.168.20.7 |
1. docker配置
所有的物理机都需要配置,只需要更改相应的网卡名eno3与consul地址
sudo vim /lib/systemd/system/docker.service #ExecStart=/usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock ExecStart=/usr/bin/dockerd -H tcp://0.0.0.0:2376 -H unix:///var/run/docker.sock --cluster-store=consul://192.168.20.5:8500 --cluster-advertise=eno3:2376 --insecure-registry=0.0.0.0/0
注意 这个配置文件优先级更高/etc/systemd/system/docker.service
检查启动
sudo systemctl daemon-reload sudo systemctl restart docker.service ps -ef | grep dockerd
2. 创建注册中心与网络
在consul上创建网段与网络名称
docker run -d -p 8400:8400 -p 8500:8500 -p 8600:53/udp -h consul progrium/consul -server -bootstrap -ui-dir /ui # 创建子网,网络自动同步到其他机器 docker network create -d overlay --subnet=192.168.21.0/24 overlay-net
查看
docker ps docker network ls
查看连接到注册中心的物理机
3. 启动容器
容器名不能重复
# 在192.168.20.5 docker run -d -it --name test1 --net=overlay-net centos bash # 在192.168.20.6 docker run -d -it --name test2 --net=overlay-net centos bash # 在192.168.20.7 docker run -d -it --name test3 --net=overlay-net centos bash
可见互相能ping通
加载全部内容