使用 docker 快速搭建 redis 集群
官方库: https://github.com/Grokzen/docker-redis-cluster
默认情况下,它将启动 3 个主控,每个主控有 1 个从属。
1、 下载镜像
docker pull grokzen/redis-cluster
2、启动容器
docker run -e "IP=0.0.0.0" -e STANDALONE=true -e SENTINEL=true -p 7000-7005 -d grokzen/redis-cluster:latest
参数说明:
-e "IP=0.0.0.0" 将内部IP环境变量添加到docker run命令中,这里的规则映射了 0.0.0.0,意味着将接受主机来自所有接口的流量。使用此容器在Mac计算机上运行Redis集群,则需要将容器配置为使用另一个IP地址进行集群发现,因为它无法使用硬编码到容器中的默认发现IP。
-e SENTINEL=true 默认情况下,未启用Sentinel实例。表示启用哨兵实例。如果-e "STANDALONE=true"通过该标志,则默认情况下在端口7006和7007上运行2个独立实例。但是,您可以将此变量设置为所需的多个独立节点,例如-e "STANDALONE=1"。请注意,独立端口在最后一个从属设备之后立即启动。如果-e "SENTINEL=true"传递了该标志,则在与群集的主实例匹配的端口5000到5002上运行3个Sentinel节点。
3、查看容器情况
docker ps
4、 使用命令启动客户端, XXXX是容器的名称,在上一步 docker ps 命令查看到最后一列 NAMES的值
docker exec -ti XXXX redis-cli -c -p 7000
5、 使用命令
cluster info #集群信息 cluster nodes #启动节点的信息
6、 测试功能
set name douger
get name