如何在Redis Stack Docker镜像中启用RedisSearch与RedisJSON功能?
开启RedisSearch和RedisJSON功能的配置方法
你当前的配置问题在于自定义了command: redis-server ...,而redis/redis-stack镜像默认是通过redis-stack-server命令来自动加载RedisSearch、RedisJSON等所有内置模块的,覆盖默认启动命令后,这些模块不会被自动加载。
下面是两种可行的解决方案:
方案一:使用镜像默认启动命令(推荐)
直接移除自定义的command字段,让镜像用默认的redis-stack-server启动,自动激活所有内置模块:
my-redis: image: redis/redis-stack networks: - base_network ports: - '6379:6379' volumes: - redis-data:/data
方案二:保留自定义配置,改用redis-stack-server命令
如果你需要保留--save、--loglevel等配置参数,只需将启动命令替换为redis-stack-server并追加你的参数即可:
my-redis: image: redis/redis-stack networks: - base_network ports: - '6379:6379' command: redis-stack-server --save 20 1 --loglevel warning --protected-mode no volumes: - redis-data:/data
验证激活状态
容器启动后,进入容器执行redis-cli,输入以下命令查看已加载模块:
module list
如果输出中包含search(RedisSearch)和ReJSON(RedisJSON)相关条目,说明功能已成功激活。
内容的提问来源于stack exchange,提问作者Samuel Belo
相关产品推荐
相关产品推荐

