当前位置:   article > 正文

史上最详细Docker安装Redis (含每一步的图解)实战+redis密码重置相关_docker 安装redis

docker 安装redis

参考原文链接:https://blog.csdn.net/weixin_45821811/article/details/116211724

一、Docker搜索redis镜像

  • 命令:docker search <镜像名称>
 docker search redis
  • 1

在这里插入图片描述

可以看到有很多redis的镜像,此处因没有指定版本,所以下载的就是默认的最新版本 。redis latest.

二、Docker拉取镜像

  • 命令::docker pull <镜像名称>:<版本号>
docker pull redis
  • 1

在这里插入图片描述

三、Docker挂载配置文件

接下来就是要将redis 的配置文件进行挂载,以配置文件方式启动redis 容器。(挂载:即将宿主的文件和容器内部目录相关联,相互绑定,在宿主机内修改文件的话也随之修改容器内部文件)
1)、挂载redis的配置文件

2)、挂载redis 的持久化文件(为了数据的持久化)。
本人的配置文件是放在
liunx 下redis.conf文件位置: /home/redis/myredis/redis.conf
liunx 下redis的data文件位置 : /home/redis/myredis/data
位置可以自己随便选择哈
在这里插入图片描述

mkdir -p /home/redis/myredis 命令 是不存在就直接创建/home/redis/myredis 文件夹
在这里插入图片描述
myredis.conf 是我手动上传的。 (文件在文末,redis.conf的标准文件在redis官网也可以找到)
在这里插入图片描述

四、启动redis 容器


docker run --restart=always --log-opt max-size=100m --log-opt max-file=2 -p 6379:6379 --name myredis -v /home/redis/myredis/myredis.conf:/etc/redis/redis.conf -v /home/redis/myredis/data:/data -d redis redis-server /etc/redis/redis.conf  --appendonly yes  --requirepass 000415

  • 1
  • 2
  • 3
  1. –restart=always 总是开机启动
  2. –log是日志方面的
  3. -p 6379:6379 将6379端口挂载出去(加粗是容器端口,:前面是宿主机端口)
  4. –name 给这个容器取一个名字
  5. -v 数据卷挂载
    ———— /home/redis/myredis/myredis.conf:/etc/redis/redis.conf 这里是将 liunx
    路径下的myredis.conf 和redis下的redis.conf 挂载在一起。
    –———— /home/redis/myredis/data:/data 这个同上
  6. -d redis 表示后台启动redis
  7. redis-server /etc/redis/redis.conf
    以配置文件启动redis,加载容器内的conf文件,最终找到的是挂载的目录 /etc/redis/redis.conf
    也就是liunx下的/home/redis/myredis/myredis.conf
  8. –appendonly yes 开启redis 持久化
  9. –requirepass 000415 设置密码 (如果你是通过docker
    容器内部连接的话,就随意,可设可不设。但是如果想向外开放的话,一定要设置,我被搞过,可以看这篇文章“阿里云服务器中毒‘Kirito666’经历”)
  10. 成功界面
    在这里插入图片描述

五、测试

1、通过docker ps指令查看启动状态

docker ps -a |grep myredis # 通过docker ps指令查看启动状态,是否成功.

  • 1
  • 2

2、查看容器运行日志

docker logs --since 30m <容器名>
  • 1

此处 --since 30m 是查看此容器30分钟之内的日志情况。

docker logs --since 30m myredis
  • 1

在这里插入图片描述

3、容器内部连接进行测试
进入容器

命令:docker exec -it <容器名> /bin/bash

此处跟着的redis-cli是直接将命令输在上面了。

docker exec -it myredis redis-cli
  • 1

进入之后,我直接输入查看命令:
可能会出现可进入与不可进入的状态
在这里插入图片描述
在这里插入图片描述
error是没有权限验证。(因为设置了密码的。)
验证密码:

config get requirepass
  • 1

在这里插入图片描述

六、配置文件

# bind 192.168.1.100 10.0.0.1
# bind 127.0.0.1 ::1
#bind 127.0.0.1

protected-mode no

port 6379

tcp-backlog 511

requirepass 000415

timeout 0

tcp-keepalive 300

daemonize no

supervised no

pidfile /var/run/redis_6379.pid

loglevel notice

logfile ""

databases 30

always-show-logo yes

save 900 1
save 300 10
save 60 10000

stop-writes-on-bgsave-error yes

rdbcompression yes

rdbchecksum yes

dbfilename dump.rdb

dir ./

replica-serve-stale-data yes

replica-read-only yes

repl-diskless-sync no

repl-disable-tcp-nodelay no

replica-priority 100

lazyfree-lazy-eviction no
lazyfree-lazy-expire no
lazyfree-lazy-server-del no
replica-lazy-flush no

appendonly yes

appendfilename "appendonly.aof"

no-appendfsync-on-rewrite no

auto-aof-rewrite-percentage 100
auto-aof-rewrite-min-size 64mb

aof-load-truncated yes

aof-use-rdb-preamble yes

lua-time-limit 5000

slowlog-max-len 128

notify-keyspace-events ""

hash-max-ziplist-entries 512
hash-max-ziplist-value 64

list-max-ziplist-size -2

list-compress-depth 0

set-max-intset-entries 512

zset-max-ziplist-entries 128
zset-max-ziplist-value 64

hll-sparse-max-bytes 3000

stream-node-max-bytes 4096
stream-node-max-entries 100

activerehashing yes

hz 10

dynamic-hz yes

aof-rewrite-incremental-fsync yes

rdb-save-incremental-fsync yes


  • 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
  • 45
  • 46
  • 47
  • 48
  • 49
  • 50
  • 51
  • 52
  • 53
  • 54
  • 55
  • 56
  • 57
  • 58
  • 59
  • 60
  • 61
  • 62
  • 63
  • 64
  • 65
  • 66
  • 67
  • 68
  • 69
  • 70
  • 71
  • 72
  • 73
  • 74
  • 75
  • 76
  • 77
  • 78
  • 79
  • 80
  • 81
  • 82
  • 83
  • 84
  • 85
  • 86
  • 87
  • 88
  • 89
  • 90
  • 91
  • 92
  • 93
  • 94
  • 95
  • 96
  • 97
  • 98
  • 99
  • 100
  • 101
  • 102
  • 103
  • 104
  • 105
  • 106

七、Docker删除Redis

教了大家怎么装,咱们也得学会怎么卸载哈,不然没法成为熟练工人(手动狗头)
7.1删除容器redis

  • 查看所有在运行的容器:
docker ps -a
  • 1

在这里插入图片描述

  • `停止运行的Redis
docker stop myredis # myredis 是我启动redis 命名的别
  • 1

在这里插入图片描述

  • 删除redis 容器:
docker rm myredis
  • 1

在这里插入图片描述
7.2、删除Redis镜像
删除容器后,我们开始删除redis镜像。

  • 查看全部镜像 命令:
docker images
  • 1
  • 删除镜像 命令 docker rmi <容器 id>
docker rmi 739b59b96069 # 这是我镜像redis id
  • 1

在这里插入图片描述
可以看到Redis 的镜像已经被删除啦。

—————————————————————————————————————————————
补充篇幅:因在实际使用过程中会清空redis密码,以下做部分内容补充
参考原文链接:https://blog.csdn.net/Lijunhaodeboke/article/details/126346067

一、docker设置redis密码

方法一:创建redis容器并设置密码

docker run -itd --name redis-6379 -p 6379:6379 redis --requirepass 123456
  • 1

说明:--name (启动容器的名称) -p 映射端口:redis启动端口 redis --requirepass 启动密码
方法二:为现有的redis创建密码或修改密码的方法:

#1.进入redis的容器
docker exec -it 容器ID bash

#2.进入redis目录
cd /usr/local/bin

#3.运行命令:
redis-cli

#4.查看现有的redis密码:
config get requirepass

#5.设置redis密码
config set requirepass 密码

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15

在这里插入图片描述
这是因为redis设置了密码,我们需要使用密码来进行验证之后再来对redis客户端进行操作,否则我们没有操作redis缓存数据库的权限。

auth 密码
  • 1

在这里插入图片描述
清空redis密码

#将密码置为空字符串即可
config set requirepass ""
  • 1
  • 2

***清空redis密码方式 config set requirepass ""在这里插入图片描述

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/知新_RL/article/detail/305486
推荐阅读
相关标签
  

闽ICP备14008679号