一、背景
最近在 Spring Boot 项目中配置了 Redis:
spring.data.redis.host=localhost
spring.data.redis.port=6379
spring.data.redis.timeout=2s
想通过 Redis Insight 可视化工具查看数据,发现连不上。又试着用 redis-cli ping 验证,结果 PowerShell 直接报错:
无法将"redis-cli"项识别为 cmdlet、函数、脚本文件或可运行程序的名称...
由此开启了一系列踩坑和填坑过程,记录如下。
二、问题根本原因
redis-cli 命令找不到,是因为 Windows 本机根本没有安装 Redis 服务 。
Spring Boot 中的配置只是客户端声明,它和 Redis Insight 一样,都必须连接到一个已经运行的 Redis 服务器。
三、安装 Redis 的三种方案
方案一:Windows 原生便携版(最简单,零网络依赖)
-
下载微软存档版 Redis:
https://github.com/microsoftarchive/redis/releases
选择
Redis-x64-3.0.504.zip -
解压到
C:\Redis -
双击
redis-server.exe,出现Ready to accept connections即启动成功 -
打开新终端,进入该目录执行:
cd C:\Redis .\redis-cli.exe ping返回
PONG即一切正常
优点 :无需联网,解压即用;
缺点:版本较老(3.0),需手动保持窗口开启或注册为服务。
方案二:Memurai(长期开发推荐)
使用 Windows 包管理器安装 Redis 兼容服务:
winget install Memurai.Memurai
安装后自动作为 Windows 服务运行,redis-cli 也会加入 PATH,任意位置可直接执行 redis-cli ping。
方案三:Docker 部署(隔离干净、版本最新)
一条命令即可启动最新版 Redis:
docker run -d -p 6379:6379 --name redis redis
但第一次使用时,国内网络环境极容易遇到 镜像拉取失败 问题,见下文。
四、Docker 拉取 Redis 镜像失败解决(重点)
执行 docker run 时报错:
Unable to find image 'redis:latest' locally
... dialing registry-1.docker.io:443 ... connectex: A connection attempt failed ...
原因:默认 Docker Hub 仓库访问受阻,尤其是 IPv6 连接被干扰。
✅ 解决方法:配置国内镜像加速器
-
打开 Docker Desktop
-
点击右上角 设置(齿轮) → 左侧选择 Docker Engine
-
编辑 JSON 配置,在
registry-mirrors中添加加速地址:{ "registry-mirrors": [ "https://docker.m.daocloud.io", "https://dockerhub.timeweb.cloud", "https://noohub.ru", "https://huecker.io" ] }注意:多个镜像可提高可用性,但保证 JSON 格式正确(逗号不要遗漏)。
-
点击 Apply & restart,等待 Docker 重启完成
-
重新执行运行命令:
docker run -d -p 6379:6379 --name redis redis此时会正常显示下载进度,直至容器启动成功。
备选方案:
-
离线镜像包 :在能访问外网的机器上
docker save导出redis.tar,再到本机docker load -i redis.tar导入。 -
回退到 Windows 原生 Redis(方案一),完全绕过网络问题。
五、Docker Desktop 的作用是什么?
简单说,Docker Desktop 是一个轻量级应用容器引擎,让你在 Windows 上以极低的资源消耗运行各种 Linux 环境下的软件(如 Redis、MySQL)。
核心优势:
-
一条命令自动下载、安装、运行,卸载也干净无残留
-
各容器互相隔离,不污染宿主机
-
可同时运行多个不同版本的同一软件
-
开发环境可通过
docker-compose.yml一键复制
对比 Windows 原生 Redis 更推荐用于学习或生产环境模拟。
六、连接 Redis Insight
无论选择哪种安装方式,只要 Redis 服务在 localhost:6379 跑起来后:
-
打开 Redis Insight
-
点击 "+ Add Redis Database"
-
填写:
-
Host:
localhost -
Port:
6379 -
Name: 任意名称
-
Username/Password:未设置密码则留空
-
-
点击 "Test Connection",成功提示后保存
即可可视化操作所有 Key,与 Spring Boot 应用共享同一 Redis 实例。
七、Docker 常用管理命令
| 操作 | 命令 |
|---|---|
| 查看运行中的容器 | docker ps |
| 停止 Redis | docker stop redis |
| 再次启动 | docker start redis |
| 进入容器内部 CLI | docker exec -it redis redis-cli |
| 删除容器 | docker rm -f redis |
端口冲突 解决:若 6379 被占用,可改用 -p 6380:6379,客户端连接时使用 localhost:6380。
八、总结
整个链条就是:
Spring Boot 配置(客户端) → 需要 Redis 服务 → Windows 本机安装 Redis(推荐 Docker) → 解决网络拉取问题(配置镜像加速)→ 最后 Redis Insight 连接同一服务进行可视化。
希望这篇记录能帮你少走弯路,如果对你有帮助,欢迎点赞收藏 ~