🚀CentOS 9 下使用 Docker Compose 安装 Redis(覆盖 99% 使用场景)详解教程
标签:Redis、CentOS9、Docker、Docker Compose、Redis Desktop Manager、持久化、集群配置、CSDN 优质文章
🧠 一、前言
Redis 作为高性能的 键值对存储数据库 ,在缓存、排行榜、消息队列、实时计算等场景广泛使用。本文将以 CentOS 9 + Docker Compose 为基础,带你一步步部署生产级 Redis 实例,兼容99% Redis 使用场景,并集成可视化工具 RedisInsight,实现可视化管理、持久化存储、密码安全、端口映射等功能。
🛠️ 二、环境准备
✅ 系统环境
项目 | 版本 |
---|---|
操作系统 | CentOS Stream 9 |
Docker | 24.x 以上 |
Docker Compose | v2.x |
Redis 镜像 | redis:7.2 |
可视化工具 | Redis Desktop Manager(Web UI) |
📦 三、Docker Compose 安装 Redis
1️⃣ 创建项目目录结构

bash
mkdir -p /etc/docker/docker-redis/data
mkdir -p /etc/docker/docker-redis/conf
cd /etc/docker/docker-redis
2️⃣ 创建 redis.conf 配置文件
在 conf/redis.conf
中写入以下配置,开启持久化、设置密码:
bash
# 文件:/etc/docker/docker-redis/conf/redis.conf
bind 0.0.0.0
port 6379
requirepass 123456
appendonly yes
protected-mode yes
databases 16
✅ 说明:
appendonly yes
开启 AOF 持久化requirepass
设置访问密码protected-mode
防止外部非授权访问
3️⃣ 编写 docker-compose.yml
yaml
version: '3.8'
services:
redis:
image: redis:7.2
container_name: redis
restart: always
ports:
- "6379:6379"
volumes:
- ./data:/data
- ./conf/redis.conf:/etc/docker/docker-redis/conf/redis.conf
command: ["redis-server", "/etc/docker/docker-redis/conf/redis.conf"]
以下是您提供的 docker-compose.yml
文件中每一行的详细中文表格解释
🧾 Docker Compose 配置逐行解析表格(版本 3.8
)
行号 | 配置项 | 含义/说明 |
---|---|---|
1 | version: '3.8' |
指定 Docker Compose 的版本,3.8 是兼容 Docker 19.03+ 的推荐版本,适用于生产环境。 |
3 | services: |
定义要部署的服务集合。 |
🧱 Redis 服务配置解释
行号 | 配置项 | 含义/说明 |
---|---|---|
4 | redis: |
Redis 服务名称,用作容器标识和网络别名。 |
5 | image: redis:7.2 |
指定使用 Redis 官方镜像,版本为 7.2。 |
6 | container_name: redis |
指定容器名称为 redis ,方便使用 docker ps 查看。 |
7 | restart: always |
容器异常退出后自动重启,保证服务高可用。 |
8 | ports: |
宿主机与容器的端口映射配置。 |
9 | - "6379:6379" |
将宿主机的 6379 端口映射到容器的 6379 端口(Redis 默认端口)。 |
10 | volumes: |
映射宿主机与容器的文件目录,实现数据和配置的持久化。 |
11 | - ./data:/data |
宿主机当前目录的 ./data 映射到容器内 Redis 数据目录 /data ,用于 AOF/RDB 持久化文件保存。 |
12 | - ./conf/redis.conf:/etc/docker/docker-redis/conf/redis.conf |
将自定义 Redis 配置文件挂载到容器内部,路径保持一致以便命令行加载。 |
13 | command: ["redis-server", "/etc/docker/docker-redis/conf/redis.conf"] |
使用自定义配置文件启动 Redis 服务器。 |
📌 总结说明
服务 | 功能 | 对外端口 | 数据持久化 | 配置方式 | 可视化支持 |
---|---|---|---|---|---|
redis |
核心数据库服务 | 6379 | ./data:/data |
./conf/redis.conf |
✔️ |
🚀 四、启动 Redis 服务
bash
cd /etc/docker/docker-redis
docker compose up -d
查看服务状态:
bash
docker ps

🔍 五、连接测试
✅ CLI 方式
bash
docker exec -it redis redis-cli -a 123456
输出示例:
bash
127.0.0.1:6379> ping
PONG
127.0.0.1:6379> set name "Redis Docker"
OK
127.0.0.1:6379> get name
"Redis Docker"

🌐 六、可视化管理工具 Redis Desktop Manager(RDM)
1️⃣ 添加 Redis 连接
- Host:
你的服务器 IP
- Port:
6379
- Auth:
yourStrongPassword
- Name:
连接名称

连接成功后即可管理 Redis 数据。
🧪 七、持久化验证
1️⃣ 添加数据
bash
127.0.0.1:6379> set demo "persist test"
2️⃣ 重启 Redis 容器
bash
docker restart redis
3️⃣ 再次连接并验证
bash
127.0.0.1:6379> get demo
"persist test"
✅ 成功说明 AOF 持久化正常
🔒 八、安全加固建议
项目 | 建议 |
---|---|
密码 | 使用复杂密码,避免弱口令 |
防火墙 | 限制 Redis 端口访问,仅允许内网 |
TLS | 生产环境推荐启用 Redis TLS 加密 |
配置文件 | 不暴露 redis.conf ,加入访问控制 |
🔄 九、常见 Redis 用法(覆盖 99% 场景)
🌟 字符串
bash
SET key value
GET key
INCR counter
🌟 哈希
bash
HSET user:1 name "Tom"
HGET user:1 name
🌟 列表
bash
LPUSH messages "hello"
LRANGE messages 0 -1
🌟 集合
bash
SADD tags redis docker
SMEMBERS tags
🌟 有序集合
bash
ZADD scores 100 "Alice" 95 "Bob"
ZRANGE scores 0 -1 WITHSCORES
🌟 过期设置
bash
SETEX token 300 "abc123"
TTL token
🌟 发布订阅
bash
SUBSCRIBE news
PUBLISH news "Redis is awesome!"
🧹 十、停止与清理
停止服务
bash
docker compose down
删除数据
bash
rm -rf /etc/docker/docker-redis/data/*
📌 十一、总结
通过本教程,你已经成功:
- 在 CentOS 9 上通过 Docker Compose 部署了生产可用的 Redis 实例;
- 实现了密码保护、AOF 持久化;
- Redis Desktop Manager可视化工具;
- 掌握了 Redis 高频命令与使用场景;
- 提升了 Redis 安全性。