docker overlay实现跨主机的容器互通的方法

本站所有内容来自互联网收集,仅供学习和交流,请勿用于商业用途。如有侵权、不妥之处,请第一时间联系我们删除!Q群:迪思分享
免费资源网 – https://freexyz.cn/

目录1. docker配置2. 创建注册中心与网络3. 启动容器

环境说明

IP
注册中心

192.168.20.5
consule

192.168.20.6

192.168.20.7

1. docker配置

所有的物理机都需要配置,只需要更改相应的网卡名eno3consul地址

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

docker overlay实现跨主机的容器互通的方法插图

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

docker overlay实现跨主机的容器互通的方法插图1

查看连接到注册中心的物理机

docker overlay实现跨主机的容器互通的方法插图2

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通

docker overlay实现跨主机的容器互通的方法插图3

免费资源网 – https://freexyz.cn/


© 版权声明
THE END
★喜欢这篇文章吗?喜欢的话,麻烦动动手指支持一下!★
点赞6 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容