2025最新:3分钟使用Docker快速部署Redis集群
📋 完整步骤:部署 Redis 集群
✅ 步骤 1:安装 Docker 和 Docker Compose
首先,确保你的 Ubuntu 系统已经安装了 Docker 和 Docker Compose。如果没有安装,执行以下命令:
# 更新系统
sudo apt update# 安装 Docker
sudo apt install docker.io -y# 启动 Docker 服务并设置为开机自启
sudo systemctl enable --now docker# 安装 Docker Compose
sudo apt install docker-compose -y
✅ 步骤 2:创建 Redis 集群文件夹
在你想部署 Redis 集群的目录下创建一个文件夹:
mkdir redis-cluster && cd redis-cluster
✅ 步骤 3:创建 docker-compose.yml
文件
使用任何编辑器创建 docker-compose.yml
文件:
nano docker-compose.yml
将以下内容粘贴到文件中:
version: '3.8'services:redis-node-1:image: redis:5.0.14container_name: redis-node-1ports:- "7001:7001"command: redis-server --port 7001 --cluster-enabled yes --cluster-config-file nodes.conf --cluster-node-timeout 5000 --appendonly yes --bind 0.0.0.0 --cluster-announce-ip 192.168.111.130redis-node-2:image: redis:5.0.14container_name: redis-node-2ports:- "7002:7002"command: redis-server --port 7002 --cluster-enabled yes --cluster-config-file nodes.conf --cluster-node-timeout 5000 --appendonly yes --bind 0.0.0.0 --cluster-announce-ip 192.168.111.130redis-node-3:image: redis:5.0.14container_name: redis-node-3ports:- "7003:7003"command: redis-server --port 7003 --cluster-enabled yes --cluster-config-file nodes.conf --cluster-node-timeout 5000 --appendonly yes --bind 0.0.0.0 --cluster-announce-ip 192.168.111.130redis-node-4:image: redis:5.0.14container_name: redis-node-4ports:- "7004:7004"command: redis-server --port 7004 --cluster-enabled yes --cluster-config-file nodes.conf --cluster-node-timeout 5000 --appendonly yes --bind 0.0.0.0 --cluster-announce-ip 192.168.111.130redis-node-5:image: redis:5.0.14container_name: redis-node-5ports:- "7005:7005"command: redis-server --port 7005 --cluster-enabled yes --cluster-config-file nodes.conf --cluster-node-timeout 5000 --appendonly yes --bind 0.0.0.0 --cluster-announce-ip 192.168.111.130redis-node-6:image: redis:5.0.14container_name: redis-node-6ports:- "7006:7006"command: redis-server --port 7006 --cluster-enabled yes --cluster-config-file nodes.conf --cluster-node-timeout 5000 --appendonly yes --bind 0.0.0.0 --cluster-announce-ip 192.168.111.130
- 这里的
192.168.111.130
是你宿主机的 IP 地址,请根据你的环境调整。 - 每个 Redis 节点绑定到不同的端口(7001~7006),并启用了集群模式。
保存文件后退出(在 nano 编辑器中按 CTRL + X
,然后按 Y
保存)。
✅ 步骤 4:启动 Redis 集群
在 redis-cluster
文件夹中,执行以下命令来启动 Redis 集群:
docker-compose up -d
这会启动 6 个 Redis 容器,分别绑定到 7001~7006 端口。
✅ 步骤 5:确认 Redis 节点已开启集群模式
执行以下命令,检查 Redis 节点是否启用了集群模式:
docker exec -it redis-node-1 redis-cli -p 7001 info | grep cluster_enabled
如果显示 cluster_enabled:1
,说明集群模式已开启。
✅ 步骤 6:初始化 Redis 集群
安装 redis-cli
用于创建Redis集群:
bash复制编辑sudo apt update
sudo apt install redis-tools
这会安装 redis-cli
命令行工具,与你的 Redis 版本无强依赖,可以用于 Redis 5、6、7 都没问题。
在宿主机上,执行以下命令来创建 Redis 集群:
redis-cli --cluster create \192.168.111.130:7001 192.168.111.130:7002 192.168.111.130:7003 \192.168.111.130:7004 192.168.111.130:7005 192.168.111.130:7006 \--cluster-replicas 1
输入 yes
确认集群创建。
✅ 步骤 7:验证集群状态
创建完成后,执行以下命令来检查集群状态:
docker exec -it redis-node-1 redis-cli -p 7001 cluster nodes
你应该能看到类似如下输出,显示所有节点的信息:
192.168.111.130:7001 master - 0 1681484071334 1 connected 0-5460
192.168.111.130:7002 master - 0 1681484071334 2 connected 5461-10922
192.168.111.130:7003 master - 0 1681484071334 3 connected 10923-16383
...
这表示你的 Redis 集群已经成功搭建,并且每个节点都已经正确加入。
🛠️ 常见问题解决
1. 如果提示 redis-cli not found
,请执行以下命令安装 redis-cli
:
sudo apt install redis-tools -y
2. 如果某个节点无法启动,检查容器日志:
docker logs redis-node-1
如果遇到错误,可以根据日志进行排查。
🚀 完整集群部署步骤总结:
- 安装 Docker 和 Docker Compose。
- 创建项目文件夹并编写
docker-compose.yml
配置文件。 - 启动 Redis 集群服务。
- 确认节点是否启用集群模式。
- 使用
redis-cli
创建 Redis 集群。 - 验证集群节点。