腾讯云服务器安装Redis Stack图文教程

发布时间:2026/8/16 6:51:30
腾讯云服务器安装Redis Stack图文教程 版权声明本文原创作者谷哥的小弟作者博客地址http://blog.csdn.net/lfdfhl前置知识在腾讯云服务器上安装Redis Stack前需要清楚地知道容器和镜像。镜像Image 是一个只读的软件模板里面已经打包好了运行某个程序所需的文件、依赖和环境。比如即将下载的redis/redis-stack-server:latest就是 Redis Stack Server 的镜像。容器Container 是根据镜像创建出来的运行实例。也就是说Docker 会以镜像为基础创建一个独立的运行环境然后在里面启动 Redis Stack Server。和 Java 类比也比较容易理解镜像类似 Java 的“类”容器类似根据类创建出来的“对象”。当然这个类比并不完全严格但非常适合理解二者的关系一个镜像可以创建多个容器就像一个类可以创建多个对象。环境准备首先执行命令cat /etc/os-release确认操作系统版本然后再执行命令docker --version查看是否已经安装Docker最后执行命令free -h查看服务器的内存和Swap使用情况详情如下[rootVM-0-13-opencloudos ~]# cat /etc/os-releaseNAMEOpenCloudOSVERSION9.4IDopencloudosID_LIKEopencloudosVERSION_ID9.4PLATFORM_IDplatform:oc9PRETTY_NAMEOpenCloudOS 9.4ANSI_COLOR0;31CPE_NAMEcpe:/o:opencloudos:opencloudos:9HOME_URLhttps://www.opencloudos.org/BUG_REPORT_URLhttps://bugs.opencloudos.tech/[rootVM-0-13-opencloudos ~]# docker --versionDocker version28.0.1-20241223130549-3b49deb, build 3b49deb[rootVM-0-13-opencloudos ~]# free -htotal usedfreeshared buff/cache available Mem:3.5Gi 862Mi 285Mi3.1Mi2.6Gi2.7Gi Swap:1.0Gi6.0Mi1.0Gi[rootVM-0-13-opencloudos ~]#图示如下从此处可以看出通过以上三条命令可以确认当前腾讯云服务器运行的是 OpenCloudOS 9.4已经安装 Docker 28.0.1因此后续部署 Redis Stack 无需再安装 Docker服务器总内存约为 3.5GiB当前可用内存约为 2.7GiB并配置了 1GiB Swap现有资源可以满足 Redis Stack 在学习和测试场景下的基本运行需求。下载Redis Stack镜像利用命令docker ps查看当前正在运行的 Docker 容器。如果 Docker 服务正常它会返回容器列表即使当前没有任何容器也会正常显示表头图示如下从命令执行结果可以看出Docker 服务已经正常运行只是当前没有正在运行的容器。执行命令docker pull redis/redis-stack-server:latest下载Redis Stack Server镜像图示如下至此已经成功下载了最新版 redis/redis-stack-server 镜像。接下来执行命令docker images确认镜像是否已经存在图示如下从上图可以看出Redis Stack Server 镜像已经成功下载到腾讯云服务器大小约为 520MB。hello-world 是服务器上原来已有的 Docker 测试镜像与 Redis Stack 无关可以暂时不用管。先不要急着创建 Redis Stack 容器先执行命令ss -lntp | grep 6379检查服务器的 6379 端口是否已经被其他 Redis 或程序占用因为 Redis Stack 默认也使用这个端口图示如下执行该命令后没有任何输出说明服务器当前没有程序监听 TCP 6379 端口因此后面可以把 Redis Stack 映射到这个端口。到目前为止Redis Stack 镜像已经下载完成Docker 服务正常6379 端口可用因此下一步就可以创建并启动 Redis Stack 容器。创建Redis Stack 容器创建并启动 Redis Stack 容器命令如下dockerrun-d\--nameredis-stack-server\-p6379:6379\-vredis-stack-data:/data\-eREDIS_ARGS--requirepass YourStrongPassword\redis/redis-stack-server:latest请把命令中的YourStrongPassword替换成你的密码比如abc123%%ABC图示如下执行该命令后得到表示Docker 容器 ID。它说明 Docker 已经根据 Redis Stack 镜像成功创建了 redis-stack-server 容器并发出了后台启动指令。继续执行命令docker ps检查容器当前状态图示如下从输出可以看出redis-stack-server 容器已经正常运行STATUS 为 Up 2 minutes同时端口映射为 0.0.0.0:6379-6379/tcp说明服务器的 6379 端口已经映射到容器中的 Redis Stack 服务。最后通过命令验证 Redis Stack 服务本身是否能够正常响应命令如下dockerexec-itredis-stack-server redis-cli-aYourStrongPassword比如dockerexec-itredis-stack-server redis-cli-aabc123%%ABC继续执行命令PING图示如下从上图可以看出执行PING后返回PONG说明 Redis Stack 服务已经正常运行。继续执行命令MODULE LIST结果如下[rootVM-0-13-opencloudos ~]# docker exec -it redis-stack-server redis-cli -a abc123%%ABCWarning: Using a password with-aor-uoption on thecommandline interface may not be safe.127.0.0.1:6379PING PONG127.0.0.1:6379MODULE LIST1)1)name2)ReJSON3)ver4)(integer)208095)path6)/opt/redis-stack/lib/rejson.so7)args8)(empty array)2)1)name2)timeseries3)ver4)(integer)112065)path6)/opt/redis-stack/lib/redistimeseries.so7)args8)(empty array)3)1)name2)search3)ver4)(integer)210205)path6)/opt/redis-stack/lib/redisearch.so7)args8)1)MAXSEARCHRESULTS2)100003)MAXAGGREGATERESULTS4)100004)1)name2)bf3)ver4)(integer)208165)path6)/opt/redis-stack/lib/redisbloom.so7)args8)(empty array)5)1)name2)redisgears_23)ver4)(integer)200205)path6)/opt/redis-stack/lib/redisgears.so7)args8)1)v8-plugin-path2)/opt/redis-stack/lib/libredisgears_v8_plugin.so6)1)name2)RedisCompat3)ver4)(integer)15)path6)/opt/redis-stack/lib/rediscompat.so7)args8)(empty array)127.0.0.1:6379从 MODULE LIST 的输出可以看出 Redis Stack的相关模块比如 Spring AI 2.0 的 Redis 对话记忆所依赖的两项主要能力ReJSON。现在执行exit命令退出redis-cli图示如下开放6379 端口退出 redis-cli 后先检查服务器自身的防火墙状态命令如下firewall-cmd--state图示如下执行结果说明 阿里云服务器上的 firewalld 当前没有运行。也就是说服务器本机这一层目前没有通过 firewalld 对 6379 端口进行拦截。首先请找到云服务器的防火墙配置模块图示如下添加规则图示如下请特别注意来源的填写固定格式为公网 IPv4 /32表示允许哪个IP访问Redis Stack。此处为了方便测试我填写了自己的电脑的公网IP。各位小伙伴可以在DOS中执行命令nslookup myip.opendns.com resolver1.opendns.com获取自己的公网IP图示如下添加完毕图示如下为了验证请在自己的 Windows 电脑上测试能否正常访问腾讯云服务器的6379 端口。请在DOS中输入以下命令powershell-CommandTest-NetConnection 你的云服务器IP -Port 6379例如powershell-CommandTest-NetConnection 43.136.136.231 -Port 6379图示如下至此我们已经成功实现了本地windows电脑到云端服务器6379端口的访问。查看Redis Stack中的数据输入如下命令进入redis-clidockerexec-itredis-stack-server redis-cli--raw再执行命令AUTH 你的Redis密码进行认证认证图示如下然后执行命令扫描Redis的键命令如下SCAN0MATCH chat-memory:* COUNT100该用于逐步扫描Redis中的键并筛选名称以chat-memory:开头的键。COUNT 100表示建议每次扫描约100个键用于查找Spring AI写入的对话记忆数据。图示如下接下来执行命令查看用户id为u123的对话记录命令如下FT.SEARCH chat-memory-idxconversation_id:{u123}LIMIT0100命令执行结果如下