# 在 Docker 上运行 Redis 堆栈
如何使用 Docker 安装 Redis Stack
要开始使用 Docker 使用 Redis Stack,您首先需要选择一个 Docker 映像:
redis/redis-stack
包含 Redis Stack 服务器和 RedisInsight。此容器最适合本地开发,因为您可以使用嵌入式 RedisInsight 来可视化您的数据。redis/redis-stack-server
仅提供 Redis Stack 服务器。此容器最适合生产部署。
# 入门
# redis/redis-stack-server
要使用映像启动 Redis Stack 服务器redis-stack-server
,请在终端中运行以下命令:
docker run -d --name redis-stack-server -p 6379:6379 redis/redis-stack-server:latest
您可以将 Redis Stack 服务器数据库连接到您的 RedisInsight
桌面应用程序。
# redis/redis 堆栈
要使用映像启动 Redis Stack 开发人员容器redis-stack
,请在终端中运行以下命令:
docker run -d --name redis-stack -p 6379:6379 -p 8001:8001 redis/redis-stack:latest
上面的docker run
命令还在端口 8001 上公开了 RedisInsight。您可以通过将浏览器指向localhost:8001
.
# 连接 redis-cli
然后,您可以使用 连接到服务器redis-cli
,就像连接到任何 Redis 实例一样。
如果您没有在redis-cli
本地安装,您可以从 Docker 容器中运行它:
$ docker exec -it redis-stack redis-cli
# 配置
# 持久性
要将 Redis 数据持久保存到本地路径,请指定-v
配置本地卷。此命令将所有数据存储在本地目录中local-data
:
$ docker run -v /local-data/:/data redis/redis-stack:latest
# 端口
如果要在不同的端口上公开 Redis Stack 服务器或 RedisInsight,请更新参数部分的左侧-p
。此命令在端口上公开 Redis Stack 服务器,在端口上公开10001
RedisInsight 13333
:
$ 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
: RedisJSON 的参数REDISGRAPH_ARGS
: RedisGraph 的参数REDISTIMESERIES_ARGS
: RedisTimeSeries 的参数REDISBLOOM_ARGS
: RedisBloom 的参数
例如,以下是如何使用REDIS_ARGS
环境变量将requirepass
指令传递给 Redis:
docker run -e REDIS_ARGS="--requirepass redis-stack" redis/redis-stack:latest
以下是为 RedisTimeSeries 设置保留策略的方法:
docker run -e REDISTIMESERIES_ARGS="RETENTION_POLICY=20" redis/redis-stack:latest