https://hub.docker.com/_/redis
docker pull redis:8.2.2
- 拉取官方Redis镜像
bash
docker pull redis:8.2.2 # 推荐指定版本,避免自动更新导致兼容问题
- 创建数据卷持久化存储(关键!)
bash
mkdir -p /data/redis/data
chmod 777 /data/redis/data # 确保容器有写入权限
- 运行Redis容器
bash
docker run -d \
--name redis \
-p 6379:6379 \
-v /data/redis/data:/data \
-v /data/redis/conf/redis.conf:/usr/local/etc/redis/redis.conf \
--restart=always \
redis:8.2.2 \
redis-server /usr/local/etc/redis/redis.conf
参数说明:
-d:后台运行
-p 6379:6379:宿主机端口映射到容器端口
-v:挂载数据卷(数据持久化)和配置文件
--restart=always:容器异常退出时自动重启
末尾指定配置文件路径启动
- 配置Redis参数(通过redis.conf)
在宿主机创建配置文件/data/redis/conf/redis.conf,示例关键配置:
conf
# 基础配置
bind 0.0.0.0 # 允许所有IP访问(生产环境建议限制IP)
requirepass MyStrongPassword123! # 设置访问密码
maxmemory 512mb # 限制内存使用
maxmemory-policy allkeys-lru # 内存淘汰策略
# RDB持久化
save 60 1000 # 每60秒有1000次写入时触发持久化
dir /data # 持久化文件存储目录(与挂载目录一致)
# AOF持久化(可选)
appendonly yes
appendfsync everysec
- 验证部署成功
bash
docker exec -it redis redis-cli -a MyStrongPassword123!
127.0.0.1:6379> ping
PONG # 出现此回复表示成功
- 常用管理命令
查看日志:docker logs redis
停止容器:docker stop redis
启动容器:docker start redis
删除容器:docker rm -f redis
关键注意事项
安全加固:
修改默认端口(如6380),通过-p 6380:6379映射
配置防火墙限制访问IP(如iptables -A INPUT -p tcp –dport 6379 -s 192.168.1.0/24 -j ACCEPT)
启用TLS加密(需配置证书)
性能优化:
根据业务调整maxmemory和淘汰策略
开启AOF+RDB双持久化(配置文件启用)
集群部署:
使用redis:7.0+支持集群模式,需配置cluster-enabled yes
通过docker run创建多个节点并加入集群
监控:
暴露Redis的监控端口(默认需配置)
配合Prometheus+Grafana监控内存、连接数等指标
通过以上步骤,可实现生产级Redis容器化部署,兼顾数据安全、持久化存储与性能优化。如需高可用架构,可结合Redis Sentinel或Redis Cluster方案扩展。

$ docker run --rm -v /your/host/path:/data redis chown -R redis:redis /data
$ docker run -v /myredis/conf:/usr/local/etc/redis --name myredis redis redis-server /usr/local/etc/redis/redis.conf
文档更新时间: 2025-11-02 13:55 作者:admin