Redis Stack Server在Docker Compose中配置持久化命令的正确方法
Redis Stack Server Docker Compose 修改存盘参数的正确命令
当把镜像从redis:7.0换成redis/redis-stack-server:latest后,原有的command配置会导致Redis进入保护模式无法外部访问——原因是Redis Stack Server的默认启动逻辑包含允许外部访问的参数,直接自定义redis-server命令会覆盖这些默认配置,让Redis回到仅绑定127.0.0.1的保护模式。
正确的Command配置写法
你需要在自定义命令中显式添加--bind 0.0.0.0参数,同时保留存盘相关配置,两种写法都可行:
数组格式(推荐)
redis-storage: image: redis/redis-stack-server:latest container_name: 'redis-storage' command: ["redis-server", "--save", "1200", "32", "--loglevel", "warning", "--bind", "0.0.0.0"] volumes: - redis-storage-data:/data
字符串格式
redis-storage: image: redis/redis-stack-server:latest container_name: 'redis-storage' command: redis-server --save 1200 32 --loglevel warning --bind 0.0.0.0 volumes: - redis-storage-data:/data
更灵活的配置文件方式
如果需要更多自定义配置,也可以挂载自己的redis.conf文件:
- 新建
redis.conf文件,写入以下内容:
save 1200 32 loglevel warning bind 0.0.0.0
- 修改Docker Compose配置:
redis-storage: image: redis/redis-stack-server:latest container_name: 'redis-storage' volumes: - redis-storage-data:/data - ./redis.conf:/etc/redis/redis.conf command: ["redis-server", "/etc/redis/redis.conf"]
内容的提问来源于stack exchange,提问作者mdisibio
相关产品推荐
相关产品推荐

