linux docker安装及卸载Redis

时间:2025-04-01 10:14:18

文章目录

    • 一、拉取镜像
      • 1、查看有哪些镜像
      • 2、拉取镜像,默认最新版本
      • 3、挂载redis的配置文件,以配置文件方式启动redis容器
        • 3.1 建立放置配置文件的文件夹的,文件夹的路径根据自己的情况选择
        • 3.2 在3.1的文件夹下在建立一个名为data的文件夹
        • 3.3 在3.1的文件夹下在建立配置文件
      • 4、启动redis容器
      • 5、启动命令讲解
      • 6、测试是否启动成功
      • 7、查看容器运行日志
    • 二、卸载redis
      • 2.1、查看所在运行的容器
      • 2.2、停止运行的redis
      • 2.3、删除容器
      • 2.4、查看所有的镜像
      • 2.5、删除镜像
    • 三、连接redis客户端
      • 3.1 命令行连接redis
      • 3.2 退出客户端

一、拉取镜像

1、查看有哪些镜像

docker search redis

2、拉取镜像,默认最新版本

docker pull redis

3、挂载redis的配置文件,以配置文件方式启动redis容器

3.1 建立放置配置文件的文件夹的,文件夹的路径根据自己的情况选择
mkdir -p /usr/local/src/myredis
3.2 在3.1的文件夹下在建立一个名为data的文件夹
mkdir -p /usr/local/src/myredis/data
3.3 在3.1的文件夹下在建立配置文件
vi 

准备conf配置文件,可以去官网下载。需要保持与安装redis版本号一致。Redis configuration | Redis

配置文件内容,粘贴保存

# 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

# 设置 Redis 连接密码
requirepass 123456

# 当客户端闲置多长时间后关闭连接,如果指定为 0,表示关闭该功能
timeout 0

tcp-keepalive 300

# 是否以守护进程的方式运行 yes是启用守护进程,no为不是
daemonize no

supervised no

# 当redis以守护进程的方式运行时,默认把pid先写指定文件
pidfile /var/run/redis_6379.pid

# 指定日志记录级别,Redis 总共支持四个级别:debug、verbose、notice、warning,默认为 verbose
loglevel notice

# 日志记录方式,默认为标准输出,如果redis以守护进程方式运行,这里又设置为标准输出,日志则将为发送给dev/null
logfile ""

# 设置数据库的数量,默认数据库为 0
databases 30

always-show-logo yes

#  900 秒(15 分钟)内有1个更改,则保存快照
save 900 1
#  300 秒(5 分钟)内有10个更改,则保存快照
save 300 10
#  60 秒(1 分钟)内有10000个更改,则保存快照
save 60 10000

stop-writes-on-bgsave-error yes

# 指定存储至本地数据库时是否压缩数据,默认为 yes,Redis 采用 LZF 压缩,如果为了节省 CPU 时间,可以关闭该选项,但会导致数据库文件变的巨大
rdbcompression yes

rdbchecksum yes

# 指定本地数据库文件名,默认值为 
dbfilename 

# 指定本地数据库存放目录
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

# 指定是否在每次更新操作后进行日志记录,也就是是否开启aof日志备份,默认为no
appendonly yes

# 指定更新日志文件名,也就是aof日志的文件名
appendfilename ""

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

4、启动redis容器

docker run --restart=always --log-opt max-size=100m --log-opt max-file=2 -p 6379:6379 --name myredis -v /usr/local/src/myredis/:/etc/redis/ -v /usr/local/src/myredis/data:/data -d redis redis-server /etc/redis/  --appendonly yes  --requirepass 123456

5、启动命令讲解

--restart=always 代表总是开机启动
--log-opt 代表日志方面
-p 6379:6379 代表将6379端口挂载出去
--name myredis 代表给容器取一个名字
-v /usr/local/src/myredis/:/etc/redis/ 代表将自己上传的配置文件和redis的配置文件挂载在一起
-v /usr/local/src/myredis/data:/data 将数据挂载在一起
-d redis 代表后台启动
redis-server /etc/redis/ 代表以配置文件启动redis,加载容器内的conf文件,因为文件挂载,最终找到上面自定义的配置文件
--appendonly yes 开启aof持久化
--requirepass 123456 设置密码,docker内部连接的话,此密码没有效,用于对外开放

6、测试是否启动成功

1、查看所有活着的容器
docker ps

2、查看指定容器名的活着的容器,myredis是创建的容器的名字,根据自己创建的名字进行输入
docker ps -a | grep myredis

7、查看容器运行日志

# 查看所有
docker logs myredis 

# --since 30m 指查看容器30分钟内的日志情况
docker logs --since 30m myredis 

二、卸载redis

2.1、查看所在运行的容器

docker ps -a

2.2、停止运行的redis

docker stop <容器名>
docker stop myredis

2.3、删除容器

docker rm <容器名>
docker rm myredis

2.4、查看所有的镜像

docker images

2.5、删除镜像

# docker rmi <镜像id>
docker rmi 739b59b94569

三、连接redis客户端

3.1 命令行连接redis

docker exec -it myredis redis-cli

# 如果存在密码,则可以在后面加 -a 123456
# 或者输入 auth 123456

3.2 退出客户端

exit