利用docker快速搭建consul集群网

本文详细介绍如何使用Docker快速搭建Consul集群,包括拉取镜像、配置服务器与客户端节点、查询容器IP、跨数据中心关联等关键步骤。

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

如果不用虚拟机,一台物理机只能搭建一个server或者client,利用docker,可以快速搭建一个consul集群。

1.docker拉群consul的镜像

#docker pull consul

2.用一个文件夹用来后面映射到docker中

#mkdir -p /data/consul

3.使用docker来搭建server

#docker run -d -p 8500:8500 -v /data/consul:/consul/data -e CONSUL_BIND_INTERFACE='eth0' --name=consul1 consul agent -server -bootstrap -ui -client='0.0.0.0'

#CONSUL_BIND_INTERFACE='eth0'其实相当于--bind='{{ GetInterfaceIP "eth0" }}'

#agent 代表启动agent进程

#server 代表它是server

#bootstrap 代表这个节点是server-leader

#ui启动web ui

-client='0.0.0.0' 代表所有的ip地址都可以访问这个节点

4.一般第一个容器的ip地址是 172.17.0.2,可以通过下面的命令查询容器ip:

#docker inspect --format '{{ .NetworkSettings.IPAddress }}' consul1

5.加入新节点

再启动一个server

#docker run -d --name=consul2 -e CONSUL_BIND_INTERFACE=eth0 consul agent --server=true --client=0.0.0.0 --join 172.17.0.2;

再启动一个client

#docker run -d --name=consul3 -e CONSUL_BIND_INTERFACE=eth0 consul agent --server=fasle --client=0.0.0.0 --join 172.17.0.2;

6.上述只搭建了dc1,下面开始搭建dc2,并将dc1和dc2关联起来

#docker run -d --name=consul4 -e CONSUL_BIND_INTERFACE='eth0' consul agent -server -bootstrap-expect 3 -datacenter=dc2

#docker run -d --name=consul5 -e CONSUL_BIND_INTERFACE=eth0 consul agent --datacenter=dc2 --server=true --client=0.0.0.0 --join 172.17.0.6;

7.关联dc1和dc2

docker exec -it consul6 consul join -wan 172.17.0.2  

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值