1、Redis Stack 简介
Redis Stack 是 Redis 的增强版本,集成了 RedisJSON、RediSearch、RedisTimeSeries 等多个模块,并提供 RedisInsight 可视化工具。
原生 Redis 与 Redis Stack 的对比:
|------|---------------|-----------------------------|
| 功能维度 | 原生Redis | Redis Stack增强功能 |
| 数据结构 | 字符串、列表、集合、哈希等 | 增加 JSON、图、时间序列、概率结构等 |
| 查询能力 | 仅限键值查询 | 支持全文搜索、向量搜索、图查询、JSON查询 |
| 使用场景 | 缓存、消息队列、计数器等 | 实时推荐、时序分析、知识图谱、文档数据、AI向量检索 |
| 开发体验 | 命令行操作、需手动拼装逻辑 | 提供RedisInsight和对象映射库、开发效率更高 |
RedisStack核心组件:
1、RedisSearch:提供全文搜索能力,支持复杂的文本搜索、聚合和过滤,以及向量数据的存储和检索。
2、RedisJSON:原生支持 JSON 数据的存储、索引和查询,可高效存储和操作嵌套的 JSON 文档。
3、RedisGraph:支持图数据模型,使用 Cypher 查询语言进行图遍历查询。
4、RedisBloom:支持 Bloom、Cuckoo、Count-Min Sketch 等概率数据结构。
2、安装环境准备
2.1 安装虚拟机、CentOS等
需要提前安装虚拟机VMware、操作系统CentOS7、Xshell5,参考博客:
https://blog.csdn.net/BiandanLoveyou/article/details/81113406
2.2 虚拟机安装Docker
虚拟机安装Docker,参考博客:
https://blog.csdn.net/BiandanLoveyou/article/details/116324916
3、CentOS7安装 Redis Stack
3.1 镜像选择
Redis Stack 提供两个官方镜像,根据使用场景选择:
| 镜像 | 包含组件 | 适用场景 |
|---|---|---|
redis/redis-stack |
Redis Stack Server + RedisInsight | 开发/测试环境 |
redis/redis-stack-server |
仅 Redis Stack Server | 生产环境 |
建议:开发环境使用完整版(含可视化工具),生产环境使用 server 版以减小攻击面。
另外:今天发现阿里云镜像地址失效,网上找了好久,找到能用的镜像地址如下:
以下命令可以配置镜像:
cat > /etc/docker/daemon.json << 'EOF'
{
"registry-mirrors": ["https://docker.m.daocloud.io"],
"max-concurrent-downloads": 10
}
然后依次输入以下命令重启docker
EOF
systemctl daemon-reload
systemctl restart docker
3.2 拉取镜像
# 拉取完整版(开发推荐)
docker pull redis/redis-stack:latest
# 或拉取 server 版(生产推荐)
docker pull redis/redis-stack-server:latest
镜像拉取完毕(截图):

3.3 启动容器
开发环境启动脚本:
docker run -d --name redis-stack -p 6379:6379 -p 8001:8001 -e REDIS_ARGS="--requirepass 123456" redis/redis-stack:latest
生产环境启动脚本:
docker run -d --name redis-stack -p 6379:6379 -e REDIS_ARGS="--requirepass 123456" redis/redis-stack-server:latest
各个参数说明:
| 参数 | 说明 |
|---|---|
-d |
后台运行 |
--name redis-stack |
容器名称 |
-p 6379:6379 |
Redis 服务端口映射 |
-p 8001:8001 |
RedisInsight Web 端口(仅完整版) |
-e REDIS_ARGS="--requirepass your_password" |
设置连接密码 |
启动成功后可以用 docker ps 查看容器运行情况:

3.4 访问 RedisInsight
若使用 redis/redis-stack 完整版镜像,启动后可通过浏览器访问可视化工具,首次访问时使用设置的环境变量密码登录,即可查看和管理 Redis 数据。

进入可视化页面如下:

4、数据持久化配置
为避免容器重启造成数据丢失,需挂载数据卷。
关于挂载的概念可以参考博客:https://blog.csdn.net/BiandanLoveyou/article/details/116377531
4.1 先创建挂载目录
mkdir -p /data/redis-stack
4.2 启动容器并挂载目录
可以先停止、删除之前启动的容器,再使用下面的命令启动容器并挂载目录。
1. 停止正在运行的容器
docker stop redis-stack
2. 删除容器
docker rm redis-stack
启动容器并挂载目录命令:
docker run -d --name redis-stack -p 6379:6379 -p 8001:8001 -v /data/redis-stack:/data -e REDIS_ARGS="--requirepass 123456 --appendonly yes" redis/redis-stack:latest
--appendonly yes 表示启用 AOF 持久化模式
5、常用管理命令
| 操作 | 命令 |
|---|---|
| 停止容器 | docker stop redis-stack |
| 启动容器 | docker start redis-stack |
| 重启容器 | docker restart redis-stack |
| 查看日志 | docker logs -f redis-stack |
| 进入容器 | docker exec -it redis-stack bash |
| 删除容器 | docker rm -f redis-stack |