1、拉取Redis镜像
# 拉取redis镜像,不指定版本则默认是最新版本
docker pull redis
2、查看镜像
# 列出本地镜像
docker images
3、准备配置文件路径
# 创建redis配置文件目录
# -p 确保每一级目录都存在,如果不存在则会自动创建
mkdir -p /usr/local/mydocker/redis/conf
# 创建redis数据文件目录
mkdir -p /usr/local/mydocker/redis/data
4、编写配置文件
最好是去redis的官方下载一个安装包,使用里面的配置文件。
下载地址:https://redis.io/downloads/。
下载后解压出一个redis.conf文件,就是我们需要的配置文件。
先在本地对配置文件做修改,修改内容如下:
bind 127.0.0.1 #注释掉这部分,使redis可以外部访问
daemonize no #用守护线程的方式启动
requirepass 你的密码 #给redis设置密码
appendonly yes #redis持久化 默认是no
把修改后的redis.conf文件放到上面配置的/usr/local/mydocker/redis/conf这个路径下。
5、启动容器
docker run -p 6379:6379 --name myredis \
-v /usr/local/mydocker/redis/data:/data \
-v /usr/local/mydocker/redis/conf/redis.conf:/etc/redis/redis.conf \
-d redis redis-server /etc/redis/redis.conf
命令解释:
- docker run:运行一个新的容器。
- -p 6379:6379:将主机上的端口6379映射到容器内的端口6379。
- --name myredis:为容器指定一个名称,这里是"myredis"。
- -v /usr/local/mydocker/redis/data:/data:将主机上的目录/usr/local/mydocker/redis/data挂载到容器内的/data目录,用于存储Redis的数据。
- -v /usr/local/mydocker/redis/conf/redis.conf:/etc/redis/redis.conf:将主机上的文件/usr/local/mydocker/redis/conf/redis.conf挂载到容器内的/etc/redis/redis.conf,用于配置Redis。
- -d redis:使用后台模式运行容器,并指定镜像名称为"redis"。
- redis-server /etc/redis/redis.conf:在容器内执行redis-server命令,启动Redis服务器并使用指定的配置文件/etc/redis/redis.conf,最终找到的是挂载的目录。
6、查看是否启动成功
[root@localhost conf]# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
e07a9d0a7700 redis "docker-entrypoint.s..." 14 seconds ago Up 13 seconds 0.0.0.0:6379->6379/tcp, :::6379->6379/tcp myredis
7、查看日志
docker logs -f myredis
8、进入容器
docker exec -it myredis /bin/bash
9、连接redis
redis-cli
# 输入密码
auth 123456
127.0.0.1:6379> auth 123456
OK
10、测试
127.0.0.1:6379> set key success
OK
127.0.0.1:6379> get key
"success"