在Windows上用Docker部署Redis 7.4,通过Docker Desktop(WSL2后端)、拉取官方镜像、手动创建持久化目录、精简配置文件(bind 0.0.0.0、protected-mode no、requirepass)、挂载运行,实现密码保护与数据持久化。

在Windows系统上用Docker部署Redis缓存服务,避开原生exe版本滞后、配置混乱、服务注册失败等常见问题,直接获得与Linux生产环境一致的Redis 7.x运行实例。
确认Docker Desktop已就绪
打开Windows终端(CMD或PowerShell),执行:
docker --version && docker-compose --version
若返回两个版本号(如 docker version 26.1.3、docker-compose version 2.29.2),说明Docker Desktop已正确安装并启用WSL2后端;【未返回版本号则必须先安装Docker Desktop并勾选“Use the WSL 2 based engine”】。跳过此步可能导致后续所有容器命令报“command not found”或“connection refused”。
拉取稳定版Redis镜像
执行命令拉取官方维护的Redis 7.4镜像(当前最新稳定版):
docker pull redis:7.4
拉取完成后,运行 docker images | findstr "redis" 查看结果。若输出中包含 redis 7.4 镜像ID和创建时间,说明拉取成功。不指定版本直接用 redis:latest 可能拉到开发分支镜像,存在非预期行为。
创建持久化目录结构
在Windows主机上新建以下路径(推荐使用 PowerShell 执行):
mkdir -p D:\docker-redis\conf
mkdir -p D:\docker-redis\data
这两级目录分别用于存放自定义配置文件和RDB/AOF持久化数据。必须手动创建,不能依赖容器自动建目录——Docker在Windows挂载时对不存在的宿主路径会静默失败,导致容器启动后/data为空、重启即丢数据。
获取并精简redis.conf配置文件
方法一:用curl下载(需PowerShell启用curl支持)
curl -o D:\docker-redis\conf\redis.conf https://raw.githubusercontent.com/redis/redis/7.4/redis.conf
方法二:浏览器打开链接 https://raw.githubusercontent.com/redis/redis/7.4/redis.conf → 全选复制 → 新建记事本 → 粘贴 → 另存为 D:\docker-redis\conf\redis.conf,编码选UTF-8无BOM。
Windows 桌面自动化技能,支持鼠标控制(移动/点击/拖拽/滚轮/截图)、键盘输入(文字输入/按键/组合键)、窗口管理(查找/聚焦/最大化/最小化/关闭/移动)、截图并发送文件。提供两种截图方式:Python pyautogui 截图(集成在自动化流程中)和 PowerShell + .NET 零依赖截图(支持区域截图和多显示器)。当用户需要自动化 Windows 桌面操作、控制鼠标键盘、管理窗口、执行 GUI 自动化任务、截图发送文件时使用。
打开该文件,定位并修改以下三处(其他保持默认即可):
① bind 0.0.0.0(允许外部连接)
② protected-mode no(关闭保护模式,否则requirepass无效)
③ requirepass your_secure_password(将your_secure_password替换为至少8位含大小写字母+数字的密码)
【切勿删除或注释掉 daemonize no 这一行——Redis容器内必须以前台模式运行,设为yes会导致容器立即退出】
启动带密码与持久化的Redis容器
执行以下单行命令(注意换行符用 ^,适用于CMD/PowerShell):
docker run -d ^
--name redis-prod ^
-p 6379:6379 ^
--restart=always ^
-v D:\docker-redis\conf\redis.conf:/usr/local/etc/redis/redis.conf ^
-v D:\docker-redis\data:/data ^
redis:7.4 /usr/local/etc/redis/redis.conf
容器启动后,立即验证是否运行:
docker ps -f name=redis-prod
若状态显示 “Up X seconds”,说明容器已健康运行。此时Redis监听6379端口,密码已生效,数据写入D:\docker-redis\data,关机重启后自动恢复服务。
测试本地连接
打开新终端,执行:
docker exec -it redis-prod redis-cli
进入交互界面后输入:
auth your_secure_password
返回 OK 即认证成功。再输入 set test "hello-docker" → get test,若返回 "hello-docker",说明Redis服务、密码、读写全部正常。

















