Docker overlay网络互通

本文介绍如何在多台主机上配置Docker网络并使用Consul搭建集群,实现跨主机的服务发现与网络互通。具体步骤包括安装Docker及依赖、启动Consul服务器、配置Docker守护进程以连接Consul集群、创建Docker Overlay网络并验证网络连通性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
1
yum install docker-ce -y
yum install python-pip -y
pip install docker-compose
systemctl enable docker.service
systemctl start docker.service
docker pull progrium/consul
环境:
192.168.56.11
192.168.56.12
192.168.56.13
目的实现192.168.56.11 自建网络互通
192.168.56.13
docker run -d -p 8500:8500 --name consul progrium/consul -server -bootstrap
192.168.56.11
/usr/lib/systemd/system/docker.service
ExecStart=/usr/bin/dockerd -H tcp://192.168.56.11 -H unix://var/run/docker.sock
[root@linux-node1 ~]# cat /etc/docker/daemon.json
{
  "registry-mirrors": ["http://224ac393.m.daocloud.io"],
  "cluster-store""consul://192.168.56.13:8500",
  "cluster-advertise""192.168.56.11:2375"
}
[root@linux-node1 ~]
systemctl  daemon-reload
systemctl  restart docker
192.168.56.12
/usr/lib/systemd/system/docker.service
ExecStart=/usr/bin/dockerd -H tcp://192.168.56.12 -H unix://var/run/docker.sock
[root@linux-node1 ~]# cat /etc/docker/daemon.json
{
  "registry-mirrors": ["http://224ac393.m.daocloud.io"],
  "cluster-store""consul://192.168.56.13:8500",
  "cluster-advertise""192.168.56.12:2375"
}
[root@linux-node2 ~]
systemctl  daemon-reload
systemctl  restart docker
浏览器浏览
 
测试
192.168.56.11 上面
docker network create -d overlay --subnet 192.168.1.0/24 ov_net1  #192.168.56.12 上面默认就有了 不用创建了
[root@linux-node1 ~]# docker  network ls 
NETWORK ID          NAME                DRIVER              SCOPE
587ebbdc8cf6        bridge              bridge              local
42863825595a        docker_gwbridge     bridge              local
df6484f00517        host                host                local
adf74519830e        none                null                local
e8d259aa8fe3        ov_net1             overlay             global
[root@linux-node1 ~]
[root@linux-node2 ~]# docker network  ls 
NETWORK ID          NAME                DRIVER              SCOPE
624c4d1628bd        bridge              bridge              local
4f7d45ab8d94        docker_gwbridge     bridge              local
df6484f00517        host                host                local
adf74519830e        none                null                local
e8d259aa8fe3        ov_net1             overlay             global
[root@linux-node2 ~]
192.168.56.11测试
docker run -it --rm --net=ov_net1 busybox
192.168.56.12测试
docker run -it --rm --net=ov_net1 busybox
查看两个容器的IP地址互相ping下 可以ping
docker run -it --rm --net=ov_net1  --ip=192.168.1.10   busybox  #指定IP地址

1.png










本文转自 小小三郎1 51CTO博客,原文链接:http://blog.51cto.com/wsxxsl/2063260,如需转载请自行联系原作者
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值