docker

关注公众号 jb51net

关闭
首页 > 网站技巧 > 服务器 > 云和虚拟化 > docker > docker容器互通

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

作者:danceghost

这篇文章主要介绍了docker overlay实现跨主机的容器互通,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下

环境说明

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

在这里插入图片描述

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通

在这里插入图片描述

到此这篇关于docker overlay实现跨主机的容器互通的文章就介绍到这了,更多相关docker容器互通内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

您可能感兴趣的文章:
阅读全文