一、背景

最近在 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 原生便携版(最简单,零网络依赖)

  1. 下载微软存档版 Redis:
    https://github.com/microsoftarchive/redis/releases
    选择 Redis-x64-3.0.504.zip

  2. 解压到 C:\Redis

  3. 双击 redis-server.exe,出现 Ready to accept connections 即启动成功

  4. 打开新终端,进入该目录执行:

    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:

powershell:
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 连接被干扰。

✅ 解决方法:配置国内镜像加速器

  1. 打开 Docker Desktop

  2. 点击右上角 设置(齿轮) → 左侧选择 Docker Engine

  3. 编辑 JSON 配置,在 registry-mirrors 中添加加速地址:

    {
      "registry-mirrors": [
        "https://docker.m.daocloud.io",
        "https://dockerhub.timeweb.cloud",
        "https://noohub.ru",
        "https://huecker.io"
      ]
    }

    注意:多个镜像可提高可用性,但保证 JSON 格式正确(逗号不要遗漏)。

  4. 点击 Apply & restart,等待 Docker 重启完成

  5. 重新执行运行命令:

    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 跑起来后:

  1. 打开 Redis Insight

  2. 点击 “+ Add Redis Database”

  3. 填写:

    • Host: localhost

    • Port: 6379

    • Name: 任意名称

    • Username/Password:未设置密码则留空

  4. 点击 “Test Connection”,成功提示后保存

即可可视化操作所有 Key,与 Spring Boot 应用共享同一 Redis 实例。


七、Docker 常用管理命令

操作命令
查看运行中的容器docker ps
停止 Redisdocker stop redis
再次启动docker start redis
进入容器内部 CLIdocker exec -it redis redis-cli
删除容器docker rm -f redis

端口冲突解决:若 6379 被占用,可改用 -p 6380:6379,客户端连接时使用 localhost:6380。


八、总结

整个链条就是:
Spring Boot 配置(客户端) → 需要 Redis 服务 → Windows 本机安装 Redis(推荐 Docker) → 解决网络拉取问题(配置镜像加速)→ 最后 Redis Insight 连接同一服务进行可视化。

希望这篇记录能帮你少走弯路,如果对你有帮助,欢迎点赞收藏 ~

Logo

汇聚全球AI编程工具,助力开发者即刻编程。

更多推荐