docker 部署 Redis

334 阅读2分钟

本文已参加 [新人创作礼] 活动,一起开启掘金创作之旅

  Redis 是一个开源的、网络化的、内存中的键值数据存储,具有可选的持久性。
  它是用 ANSI C 编写的。Redis 的开发今天由 Redis Labs 赞助;在此之前,
  它是由 Pivotal 和 VMware 赞助的。根据 DB-Engines.com 的月度排名,
  Redis 是最受欢迎的键值存储。Redis 这个名字的意思是远程字典服务器。

一、 Docker部署Redis

使用dockerhub搜索redis镜像文件,选择自己需要的版本进行安装.
为了方便通过 Docker 网络从其他容器访问 Redis,“保护模式”默认关闭。
这意味着如果您将端口暴露在您的主机之外(例如,通过`-p`on `docker run`)
将在没有密码的情况下向任何人开放。

以redis 7.0.0为例

(1) 使用pull命令拉取镜像

docker pull redis:7.0.0

(2)启动一个redis实例

docker run --name some-redis -d redis

 以上是最简单的启动一个redis实例,也可以使用持久存储进行启动一个redis实例

docker run --name some-redis -d redis redis-server --save 60 1 --loglevel warning

 有几种不同的持久性策略可供选择。如果执行了至少 1 次写入操作,
 此选项将每 60 秒保存一次数据库快照(它也会导致更多日志,
 因此该`loglevel`选项可能是可取的)。如果启用了持久性,
 则数据存储在 中`VOLUME /data`,
 可以与`--volumes-from some-volume-container`or一起使用`-v /docker/host/dir:/data`
 
 

连接 redis-cli

docker run -it --network some-network --rm redis redis-cli -h some-redis

也可以自己配置redis的配置文件,在build容器时指定配置文件就可以

比如

FROM redis COPY redis.conf /usr/local/etc/redis/redis.conf CMD [ "redis-server", "/usr/local/etc/redis/redis.conf" ]

 可以使用`docker run`选项指定相同的内容。
 

docker run -v /myredis/conf:/usr/local/etc/redis --name myredis redis redis-server /usr/local/etc/redis/redis.conf

包含文件`/myredis/conf/`的本地目录在哪里。
`redis.conf`使用这种方法意味着您不需要为您的 redis 容器提供 Dockerfile。

 映射目录应该是可写的,因为根据配置和操作模式,
 Redis 可能需要创建额外的配置文件或重写现有的配置文件。