Docker安装redis(保姆级教程&图文并茂)

简介: Docker安装redis(保姆级教程&图文并茂)

在这里插入图片描述

⭐一、服务器配置


🍒关闭防火墙、沙盒、iptables

systemctl stop firewalld  && systemctl disable firewalld
setenforce 0
vim /etc/selinux/config 
#编辑  SELINUX=disabled
iptables -F &&  iptables-save

🍒安装docker

yum -y install docker
systemctl start docker
systemctl enable docker

# docker版本
[root@localhost ~]# docker --version
Docker version 1.13.1, build 7d71120/1.13.1

⭐二、Docker搜索redis镜像


docker search redis

在这里插入图片描述

⭐三、Docker拉取镜像


docker pull redis

在这里插入图片描述

⭐四、Docker挂载配置文件


  • 挂载redis的配置文件
  • 挂载redis 的持久化文件(为了数据的持久化)
宿主机的位置选择可以根据磁盘空间大小自由选择

宿主机redis.cof文件位置 : /data/redis/conf/redis.cof

mkdir -p /data/redis/conf
cd /data/redis/conf
vi redis.conf
#将⭐七、配置文件内容 进行复制

宿主机redis-data位置 : /data/redis/data

mkdir -p /data/redis/data

⭐五、启动redis 容器


🍒启动命令

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

🍒参数解析

  • 【 --restart=always】 开机启动,失败也会一直重启;
  • 【--log-opt max-size=100m】意味着一个容器日志大小上限是100M;
  • 【--log-opt max-file=2】意味着一个容器有2个日志,分别是id+.json、id+1.json;
  • 【-p 6379:6379】 将宿主机6379端口与容器内6379端口进行映射;
  • 【-v】 将宿主机目录或文件与容器内目录或文件进行挂载映射;
  • **【-itd】

                     i:以交互模式运行容器,通常与 -t 同时使用;
                   t:为容器重新分配一个伪输入终端,通常与 -i 同时使用;
                  d:表示后台启动redis;**
  • 【--name】 给容器命名;
  • 【–appendonly yes】 开启redis 持久化;
  • 【–requirepass qwe123】 强烈建议设置密码,并且将密码设置为高强度复杂;
  • 【redis-server /etc/redis/redis.conf】 以配置文件启动redis,加载容器内的conf文件;

🍒老版本启动报错

老版本docker在启动的时候 可能会报错;是因为老版本的docker日志驱动程序是:journald
... unknown log opt 'max-file' for journald log driver

修改配置文件

vim /etc/sysconfig/docker
#编辑
原文:OPTIONS='--selinux-enabled --log-driver=journald --signature-verification=false'
编辑后:OPTIONS='--selinux-enabled --log-driver=json-file --signature-verification=false'

重启dokcer加载配置文件

systemctl daemon-reload && systemctl restart docker

⭐六、测试redis


🍒查看启动状态

docker ps -a | grep redis

在这里插入图片描述

🍒查看容器日志

docker logs -f  redis

在这里插入图片描述

🍒查看redis命令是否正常

docker exec -it redis redis-cli

在这里插入图片描述

⭐七、配置文件


redis.conf配置文件
protected-mode no

port 6379

tcp-backlog 511
#redis密码 强烈建议设置复杂一些
requirepass qwe123     

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

⭐使用[RedisDesktopManager]工具进行连接

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

相关文章
|
关系型数据库 应用服务中间件 nginx
Docker一键安装中间件(RocketMq、Nginx、MySql、Minio、Jenkins、Redis)
本系列脚本提供RocketMQ、Nginx、MySQL、MinIO、Jenkins和Redis的Docker一键安装与配置方案,适用于快速部署微服务基础环境。
|
11月前
|
存储 NoSQL Redis
手把手教你用 Docker 部署 Redis
Redis是高性能内存数据库,支持多种数据结构,适用于缓存、消息队列等场景。本文介绍如何通过Docker快速拉取轩辕镜像并部署Redis,涵盖快速启动、持久化存储及docker-compose配置,助力开发者高效搭建稳定服务。
3033 8
|
11月前
|
NoSQL 算法 Redis
【Docker】(3)学习Docker中 镜像与容器数据卷、映射关系!手把手带你安装 MySql主从同步 和 Redis三主三从集群!并且进行主从切换与扩容操作,还有分析 哈希分区 等知识点!
Union文件系统(UnionFS)是一种**分层、轻量级并且高性能的文件系统**,它支持对文件系统的修改作为一次提交来一层层的叠加,同时可以将不同目录挂载到同一个虚拟文件系统下(unite several directories into a single virtual filesystem) Union 文件系统是 Docker 镜像的基础。 镜像可以通过分层来进行继承,基于基础镜像(没有父镜像),可以制作各种具体的应用镜像。
1043 6
|
缓存 NoSQL 关系型数据库
美团面试:MySQL有1000w数据,redis只存20w的数据,如何做 缓存 设计?
美团面试:MySQL有1000w数据,redis只存20w的数据,如何做 缓存 设计?
美团面试:MySQL有1000w数据,redis只存20w的数据,如何做 缓存 设计?
|
缓存 NoSQL Java
Redis+Caffeine构建高性能二级缓存
大家好,我是摘星。今天为大家带来的是Redis+Caffeine构建高性能二级缓存,废话不多说直接开始~
1889 0
|
11月前
|
缓存 负载均衡 监控
135_负载均衡:Redis缓存 - 提高缓存命中率的配置与最佳实践
在现代大型语言模型(LLM)部署架构中,缓存系统扮演着至关重要的角色。随着LLM应用规模的不断扩大和用户需求的持续增长,如何构建高效、可靠的缓存架构成为系统性能优化的核心挑战。Redis作为业界领先的内存数据库,因其高性能、丰富的数据结构和灵活的配置选项,已成为LLM部署中首选的缓存解决方案。
1018 25
|
存储 缓存 NoSQL
Redis专题-实战篇二-商户查询缓存
本文介绍了缓存的基本概念、应用场景及实现方式,涵盖Redis缓存设计、缓存更新策略、缓存穿透问题及其解决方案。重点讲解了缓存空对象与布隆过滤器的使用,并通过代码示例演示了商铺查询的缓存优化实践。
471 1
Redis专题-实战篇二-商户查询缓存
|
11月前
|
缓存 运维 监控
Redis 7.0 高性能缓存架构设计与优化
🌟蒋星熠Jaxonic,技术宇宙中的星际旅人。深耕Redis 7.0高性能缓存架构,探索函数化编程、多层缓存、集群优化与分片消息系统,用代码在二进制星河中谱写极客诗篇。
1958 3
|
缓存 NoSQL 关系型数据库
Redis缓存和分布式锁
Redis 是一种高性能的键值存储系统,广泛用于缓存、消息队列和内存数据库。其典型应用包括缓解关系型数据库压力,通过缓存热点数据提高查询效率,支持高并发访问。此外,Redis 还可用于实现分布式锁,解决分布式系统中的资源竞争问题。文章还探讨了缓存的更新策略、缓存穿透与雪崩的解决方案,以及 Redlock 算法等关键技术。
|
消息中间件 缓存 NoSQL
基于Spring Data Redis与RabbitMQ实现字符串缓存和计数功能(数据同步)
总的来说,借助Spring Data Redis和RabbitMQ,我们可以轻松实现字符串缓存和计数的功能。而关键的部分不过是一些"厨房的套路",一旦你掌握了这些套路,那么你就像厨师一样可以准备出一道道饕餮美食了。通过这种方式促进数据处理效率无疑将大大提高我们的生产力。
444 32