在 Docker 上运行 Redis Stack
如何使用Docker安装Redis Stack
要开始使用Redis Stack和Docker,首先需要选择一个Docker镜像:
-
redis/redis-stack包含 Redis Stack 服务器和 Redis Insight。这个容器最适合本地开发,因为你可以使用内置的 Redis Insight 来可视化你的数据。 -
redis/redis-stack-server仅提供 Redis Stack 服务器。此容器最适合生产部署。
入门指南
redis/redis-stack-server
要使用redis-stack-server镜像启动Redis Stack服务器,请在终端中运行以下命令:
docker run -d --name redis-stack-server -p 6379:6379 redis/redis-stack-server:latestredis/redis-stack
要使用redis-stack镜像启动Redis Stack容器,请在终端中运行以下命令:
docker run -d --name redis-stack -p 6379:6379 -p 8001:8001 redis/redis-stack:latest上面的docker run命令还在端口8001上暴露了Redis Insight。你可以通过将浏览器指向localhost:8001来使用Redis Insight。
使用 redis-cli 连接
然后你可以使用redis-cli连接到服务器,就像连接到任何Redis实例一样。
如果您没有在本地安装redis-cli,您可以从Docker容器中运行它:
$ docker exec -it redis-stack redis-cli配置
Docker中的持久化
要将目录或文件挂载到您的Docker容器中,请指定-v来配置本地卷。此命令将所有数据存储在本地目录local-data中:
$ docker run -v /local-data/:/data redis/redis-stack:latest端口
如果你想在不同的端口上暴露Redis Stack服务器或Redis Insight,请更新-p参数的左侧部分。此命令在端口10001上暴露Redis Stack服务器,并在端口13333上暴露Redis Insight:
$ docker run -p 10001:6379 -p 13333:8001 redis/redis-stack:latest配置文件
默认情况下,Redis Stack Docker 容器使用 Redis 的内部配置文件。要使用本地配置文件启动 Redis,您可以使用 -v 卷选项:
$ docker run -v `pwd`/local-redis-stack.conf:/redis-stack.conf -p 6379:6379 -p 8001:8001 redis/redis-stack:latest环境变量
要传入任意配置更改,您可以设置以下任何环境变量:
-
REDIS_ARGS: Redis的额外参数 -
REDISEARCH_ARGS: 用于搜索和查询功能的参数 (RediSearch) -
REDISJSON_ARGS: JSON 的参数 (RedisJSON) -
REDISTIMESERIES_ARGS: 时间序列的参数(RedisTimeSeries) -
REDISBLOOM_ARGS: 用于概率数据结构(RedisBloom)的参数
例如,这里是如何使用REDIS_ARGS环境变量将requirepass指令传递给Redis:
docker run -e REDIS_ARGS="--requirepass redis-stack" redis/redis-stack:latest设置Redis持久化的示例:
docker run -e REDIS_ARGS="--save 60 1000 --appendonly yes" redis/redis-stack:latest以下是如何为时间序列设置保留策略:
docker run -e REDISTIMESERIES_ARGS="RETENTION_POLICY=20" redis/redis-stack:latest