Docker 之十实战使用 Docker 官方的 Redis 镜像

Docker 官方 Redis 镜像的使用说明文档

使用 Docker 官方的 Redis 镜像

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
# 搜索所有可用的Redis镜像
# docker search redis

# 下载Docker官方提供的Redis5.0镜像(基于Debian-Stretch)
# docker pull redis:5.0

# 创建并启动(以后台方式)Redis容器,同时挂载Redis的数据文件目录和启用AOF
# docker run -p 6379:6379 --name redis5.0 \
-v /container/redis5.0/data:/data \
-d redis:5.0 redis-server --appendonly yes

# 或者指定Redis的配置文件目录来启动Redis容器
# docker run -p 6379:6379 --name redis5.0 \
-v /container/redis5.0/conf/redis.conf:/usr/local/etc/redis/redis.conf \
-v /container/redis5.0/data:/data \
-d redis:5.0 redis-server /usr/local/etc/redis/redis.conf

# 注意:
# 上面的/container/redis5.0/conf/redis.conf是Redis的配置文件目录(非配置文件本身),应该在此目录下预先添加Reids真正的配置文件redis.conf,然后再启动Redis容器
# 如果指定Reids配置文件目录来启动Redis容器,那配置文件redis.conf里应该注释掉"bind"相关配置项
# 指定Redis的配置文件目录来启动Redis容器,并添加Redis的配置文件,最终宿主机共享目录的目录结构如下:
/container
└── redis5.0
├── conf
│   └── redis.conf
│   └── redis.conf
└── data

# 查看当前所有正在运行的容器
# docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
dbe17690112d redis:5.0 "docker-entrypoint.s…" 3 minutes ago Up 3 minutes 0.0.0.0:6379->6379/tcp redis5.0

# 连接到Docker容器,连接之后如果想断开连接,在容器内的终端直接执行"exit"命令即可,连接断开后容器不会停止运行
# docker exec -it redis5.0 /bin/bash

# 在容器内,连接到Redis服务器
# redis-cli -p 6379

# 提示:Reids相关文件目录说明
# 默认数据文件目录:/data
# 默认安装目录:/usr/local/bin/
# 默认日志文件:在配置文件redis.conf中指定
# 默认配置文件:启动Redis容器的时候,如果不指定Redis的配置文件目录,则容器内使用默认参数启动Redis服务(即此时不存在默认的Reids配置文件)

验证 Redis 服务器是否可用

1
2
3
4
5
6
7
8
9
10
11
12
13
14
# 在宿主机上,使用容器内的redis-cli工具连接到的Redis服务器
# docker exec -it redis5.0 redis-cli

# 或者在宿主机上,使用容器内的redis-cli工具连接到的Redis服务器,并指定Redis服务监听的端口
# docker exec -it redis5.0 redis-cli -p 6379

# 设置Key
127.0.0.1:6379> set key1 helloworld

# 获取Key
127.0.0.1:6379> get key1

# 退出Redis登录
127.0.0.1:6379> exit