目录

docker起redis服务

# docker起redis服务

# 1、拉取镜像

docker pull redis:版本号 #默认为last最新版
1

# 2、手动创建配置文件

redis.conf 配置文件:

#注释掉这部分,这是限制redis只能本地访问
bind 127.0.0.1
#默认yes,开启保护模式,限制为本地访问
protected-mode no
#默认no,改为yes意为以守护进程方式启动,可后台运行,除非kill进程,改为yes会使配置文件方#式启动redis失败
daemonize no
#redis持久化(可选)
appendonly yes
#设置密码
requirepass 123456 
#数据目录
dir ...
1
2
3
4
5
6
7
8
9
10
11
12

移动配置文件到自定义的目录:

mv  redis.conf /data/redis/
1

数据以及日志保存的目录:

mkdir /data/redis/data
1

# 3、启动命令

docker run -p 6379:6379 --name redis -v /data/redis/redis.conf:/etc/redis/redis.conf  -v /data/redis/data:/data -d redis:5.0 redis-server /etc/redis/redis.conf --appendonly yes 
1

命令注释:

  • -p 6379:6379 端口映射:前表示主机部分,:后表示容器部分。
  • --name redis 指定该容器名称,查看和进行操作都比较方便。
  • -v 挂载目录,规则与端口映射相同。
  • -d redis 表示后台启动redis。
  • redis-server /etc/redis/redis.conf 以配置文件启动redis,加载容器内的conf文件,最终找到的是挂载的目录/usr/local/redis.conf。
  • --appendonly yes 开启redis 持久化

# 4、注意

  1. 在服务器部署redis服务,一定要设置密码,不然很容易受到攻击!

  2. 使用外部服务连接redis,需要开放相应的端口,同时根据上文所说redis.conf配置文件注释掉bind行,否则访问不了

  3. 两次 -v 挂在目录,路径要写对,尤其是映射配置文件的挂载,宿主机中的配置文件中的dir 需要指定的是 容器中的目录,如果指定为宿主机的目录,则容器启动不了

    查看日志:

    xxxx No such file or directory
    
    1
  4. 如果使用docker容器部署,宿主机里的redis配置文件其实可以省略,因为在run的时候就通过命令的方式指定了 挂在的数据目录

上次更新: 2022/05/13 21:13:15
最近更新
01
关于我
07-14
02
科学上网
11-15
03
OSS+CDN
09-23
更多文章>
极昼青春
买辣椒也用券