全部学科
Python全栈
python
NodeJS全栈
nodejs
📅 2026-05-21 5 分钟 ✍️ juanwangdev

Redis 容器部署

Redis 是高性能内存数据库,常用作缓存和消息队列,下面介绍容器化部署。

快速部署

Bash
# 最简单部署(无密码,仅开发环境)
docker run -d --name my-redis -p 6379:6379 redis:7

# 连接测试
docker exec -it my-redis redis-cli

密码认证

Bash
# 设置密码
docker run -d \
  --name my-redis \
  -p 6379:6379 \
  redis:7 \
  redis-server --requirepass mypassword

# 连接验证
docker exec -it my-redis redis-cli -a mypassword

数据持久化

RDB 快照

Bash
# 挂载数据目录
docker run -d \
  --name my-redis \
  -p 6379:6379 \
  -v /data/redis:/data \
  redis:7 \
  redis-server --requirepass mypassword --save 60 1

AOF 日志

Bash
# 开启 AOF
docker run -d \
  --name my-redis \
  -p 6379:6379 \
  -v /data/redis:/data \
  redis:7 \
  redis-server \
    --requirepass mypassword \
    --appendonly yes \
    --appendfsync everysec

持久化模式对比:

模式性能数据安全性恢复速度
RDB可能丢数据
AOF几乎不丢
RDB+AOF快(用 RDB)

完整部署

Bash
# 生产环境部署
docker run -d \
  --name redis-prod \
  -p 127.0.0.1:6379:6379 \
  -v /data/redis:/data \
  --restart unless-stopped \
  redis:7 \
  redis-server \
    --requirepass mypassword \
    --appendonly yes \
    --appendfsync everysec \
    --maxmemory 256mb \
    --maxmemory-policy allkeys-lru

配置文件挂载

创建 /data/redis.conf

conf
bind 0.0.0.0
port 6379
requirepass mypassword
appendonly yes
maxmemory 256mb
maxmemory-policy allkeys-lru
Bash
# 挂载配置文件
docker run -d \
  --name redis-prod \
  -p 127.0.0.1:6379:6379 \
  -v /data/redis.conf:/usr/local/etc/redis/redis.conf:ro \
  -v /data/redis:/data \
  redis:7 \
  redis-server /usr/local/etc/redis/redis.conf

常用操作

Bash
# 进入 CLI
docker exec -it my-redis redis-cli -a mypassword

# 查看信息
redis-cli> INFO
redis-cli> DBSIZE
redis-cli> CONFIG GET maxmemory

# 备份数据
docker exec my-redis redis-cli -a mypassword BGSAVE

# 清理数据
docker exec my-redis redis-cli -a mypassword FLUSHALL

要点总结

  • 快速部署:docker run -d -p 6379:6379 redis:7
  • 生产环境必须设置密码:--requirepass
  • 数据持久化挂载到 /data,推荐 AOF 或 RDB+AOF
  • 绑定 127.0.0.1:6379 防止外部访问
  • 配置 maxmemory 和淘汰策略防止内存爆满
想在手机上练习这篇文章的配套题目?
使用微信卷王开发者小程序,打开首页顶部扫码功能识别二维码
← 上一篇 Nginx 容器部署
下一篇 → MySQL/PostgreSQL 容器部署
扫码体验小程序
加载中
想在手机上刷题学习?
使用微信卷王开发者小程序,打开首页顶部扫码功能识别二维码