一、docker pull 拉取镜像

Docker Hub中拉取Redis镜像,如果不指定版本,则拉取的版本为latest,最新版。

1
docker pull redis

指定Redis版本

1
docker pull redis:5.0.3

建议指定版本,这样可以选择指定版本的配置文件redis.conf。
使用:

1
docker images

查看docker中存在的镜像,可以看到Redis镜像版本号为5.0.3

二、docker run 启动容器

1、不指定配置文件

Docker 运行Redis镜像:

1
docker run -d --name redis -p 6379:6379 0f88f9be5839

-d:容器后台运行,返回容器ID
–name:给容器命名
-p:端口映射,格式:主机端口:容器端口
0f88f9be5839 为容器的 IMAGE ID,也可以使用 REPOSITORY:TAG 即:redis:5.0.3

使用:

1
docker ps

查看Redis容器的启动结果

此时,说明Redis容器启动成功,可以使用 RedisDesktopManager 验证连接。

2、指定配置文件

Docker Hub 官网提供了两种方式使用自己的redis.conf:
1、构建自己的Dockerfile
2、使用docker run 的时候指定配置文件

这里使用第二种方式,指定配置文件。

(1)、获取配置文件
因为不同版本的redis配置文件可能有所不同,所以配置文件的版本需要与docker pull 拉取的镜像版本一致。
可以在redis官网或者使用wget命令下载redis,获取配置文件。

(2)、配置文件
在配置文件中:

1
daemonize yes

此项配置需要注释,或者设置为 no ,不然会与docker run -d 起冲突,导致容器启动不成功。

使用

1
docker run -d --name redis -p 6379:6379 -v /redis/conf/redis.conf:/usr/local/etc/redis/redis.conf redis:5.0.3 redis-server /usr/local/etc/redis/redis.conf

-v:资源映射,相当于将指定的文件/redis/conf/redis.conf 放到/usr/local/etc/redis/ 文件下。
redis-server:比较重要的步骤,使Redis按照redis.conf配置文件启动。

也可以添加 -v /redis/data:/data ,将Redis持久化的数据放到/redis/data目录下

1
docker run -d --name redis -p 6379:6379 -v /redis/conf/redis.conf:/usr/local/etc/redis/redis.conf -v /redis/data:/data 0f55cf3661e9 redis-server /usr/local/etc/redis/redis.conf

三、docker exec 进入容器

Redis 容器启动成功后,使用:

1
docker exec -it redis /bin/bash

redis 为容器名称,进入容器内部,使用:

1
redis-cli

连接Redis 客户端。
退出容器命令为:exit
也可以直接连接Redis 客户端:

1
docker exec -it redis redis-cli