Docker安装redis、redis设置密码、挂载配置文件并以配置文件方式启动(避坑)

1. 拉取redis镜像:

拉取最新版:docker pull redis   拉取指定版本,以6.2.7为例:docker pull redis:6.2.7

 

2. 在Linux环境中创建需要挂载的目录

mkdir /usr/local/software/redis/6379/conf
mkdir /usr/local/software/redis/6379/data
mkdir /usr/local/software/redis/6379/log

 

3. 下载指定版本的配置文件(一定要下载对应版本)

https://redis.io/docs/management/config

 

4. 将配置文件上传至 /usr/local/software/redis/6379/conf 目录下,并在/usr/local/software/redis/6379/log 目录下创建空的日志文件 redis.log

 

5. 修改 redis.conf

bind 0.0.0.0  #默认127.0.0.,1改为0.0.0.0,解除本地连接限制
protected-mode no  #默认yes,开启保护模式,限制为本地访问
daemonize no  ##默认no,改为yes意为以守护进程方式启动,可后台运行,除非kill进程,改为yes会使配置文件方式启动redis失败
requirepass 123  #密码
logfile "/var/log/redis.log"  #容器内的日志位置

特别说明(踩过坑):
  daemonize 设置成yes是将redis以守护线程的方式启动,redis会自动后台运行,但这个设置的前提是用在宿主机直接启动redis。但使用docker启动redis时,使用默认的即可(即设置为no),否则启动的docker容器就无事可干了,docker这时会自动退出,就会启动报错了。


6. 创建容器(容器内的位置可以任意指定),以配置文件的方式启动,如果启动失败,请返回上一步查看 redis 配置

docker run -it --name redis_6379 -p 6379:6379 -v /usr/local/software/redis/6379/conf/redis.conf:/usr/local/etc/redis/redis.conf -v /usr/local/software/redis/6379/data/:/data -v /usr/local/software/redis/6379/log/redis.log:/var/log/redis.log -d redis:6.2.7 /usr/local/etc/redis/redis.conf

 

7. docker ps 查看是否启动成功

 

8. 测试 redis

输入指令:docker exec -it redis_6379 /bin/bash,进入容器内。
输入指令:redis-cli -a 123,运行 redis 客户端, -a是指输入密码。
输入指令:ping,显示 PONG 代表测试成功!
posted on 2023-08-27 23:17  打篮球的Curry  阅读(2104)  评论(0编辑  收藏  举报