1.原生安装Redis步骤多,系统环境污染重,卸载麻烦,耗时耗力 2.Docker安装Redis单机版,简单轻松,数据本地持久化方便,不易丢失 3.需要提前安装Docker环境,主页有相关文章 4.单机版相对占用资源低,临时存储数据首选 定期输出效率提升干货,点赞+收藏+评论+关注,了解效率提升动态 保存退出 上文设置密码: root1234 反复练习,一些文件脚本提前准备后,控制在1分钟内完成[第一次安装会慢,需要下载镜像] 定期输出效率提升干货,点赞+收藏+评论+关注,了解效率提升动态准备Dokcer环境
# 建文件脚本命令
mkdir -p /home/data/redisData/data \
&& mkdir -p /home/data/redisData/logs \
&& mkdir -p /home/data/redisData/conf \
&& mkdir -p /home/data/redisData/compose \
&& cd /home/data/redisData/compose \
&& chmod 777 /home/data/redisData/data \
&& chmod 777 /home/data/redisData/logs \
&& vi /home/data/redisData/compose/compose.yml
粘贴容器编排文件,并创建网络
version: '3'
services:
redis:
image: redis
container_name: redisCabin
restart: always
volumes:
- /home/data/redisData/data:/data
- /home/data/redisData/conf/redis.conf:/usr/local/etc/redis/redis.conf
- /home/data/redisData/logs:/logs
ports:
- 16300:6379
networks:
default:
external:
name: myRedisNet
配置文件
vi /home/data/redisData/conf/redis.conf
# Redis默认不是以守护进程的方式运行,可以通过该配置项修改,使用yes启用守护进程
# 启用守护进程后,Redis会把pid写到一个pidfile中,在/var/run/redis.pid
daemonize no
# 当Redis以守护进程方式运行时,Redis默认会把pid写入/var/run/redis.pid文件,可以通过pidfile指定
pidfile /var/run/redis.pid
# 指定Redis监听端口,默认端口为6379
# 如果指定0端口,表示Redis不监听TCP连接
port 6379
# 绑定的主机地址
# 你可以绑定单一接口,如果没有绑定,所有接口都会监听到来的连接
# bind 127.0.0.1
# 当客户端闲置多长时间后关闭连接,如果指定为0,表示关闭该功能
timeout 0
# 指定日志记录级别,Redis总共支持四个级别:debug、verbose、notice、warning,默认为verbose
# debug (很多信息, 对开发/测试比较有用)
# verbose (许多很少有用的信息,但不是像调试级别一样的混乱/ 常用配置)
# notice (比 verbose 适当的详细点, 觉的verbose简单的话可以用这个)
# warning (仅仅记录一些关键重要的信息)
loglevel verbose
# 日志记录方式,默认为标准输出,如果配置为redis为守护进程方式运行,而这里又配置为标准输出,则日志将会发送给/dev/null
logfile /logs/redis.log
# To enable logging to the system logger, just set 'syslog-enabled' to yes,
# and optionally update the other syslog parameters to suit your needs.
# syslog-enabled no
# Specify the syslog identity.
# syslog-ident redis
# Specify the syslog facility. Must be USER or between LOCAL0-LOCAL7.
# syslog-facility local0
# 设置数据库的数量,默认数据库为0,可以使用select <dbid>命令在连接上指定数据库id
# dbid是从0到‘databases’-1的数目
databases 16
################################ 快照 #################################
# 指定在多长时间内,有多少次更新操作,就将数据同步到数据文件,可以多个条件配合
# Save the DB on disk:
#
# 满足以下条件将会同步数据:
# 900秒(15分钟)内有1个更改
# 300秒(5分钟)内有10个更改
# 60秒内有10000个更改
# Note: 可以把所有“save”行注释掉,这样就取消同步操作了
save 900 1
save 300 10
save 60 10000
# 指定存储至本地数据库时是否压缩数据,默认为yes,Redis采用LZF压缩,如果为了节省CPU时间,可以关闭该选项,但会导致数据库文件变的巨大
rdbcompression yes
# 指定本地数据库文件名,默认值为dump.rdb
dbfilename dump.rdb
# 工作目录.
# 指定本地数据库存放目录,文件名由上一个dbfilename配置项指定
# Also the Append Only File will be created inside this directory.
# 注意,这里只能指定一个目录,不能指定文件名
dir ./
################################# 主从 #################################
# 主从复制。使用slaveof从 Redis服务器复制一个Redis实例。注意,该配置仅限于当前slave有效
slave-serve-stale-data yes
################################## 安全 ###################################
# 设置Redis连接密码,如果配置了连接密码,客户端在连接Redis时需要通过auth <password>命令提供密码,默认关闭
requirepass root1234
################################### 限制 ####################################
# 设置同一时间最大客户端连接数,默认无限制,Redis可以同时打开的客户端连接数为Redis进程可以打开的最大文件描述符数,
# 如果设置maxclients 0,表示不作限制。当客户端连接数到达限制时,Redis会关闭新的连接并向客户端返回max Number of clients reached错误信息
maxclients 100
############################## APPEND ONLY MODE ###############################
# 指定是否在每次更新操作后进行日志记录,Redis在默认情况下是异步的把数据写入磁盘,如果不开启,可能会在断电时导致一段时间内的数据丢失。
# 因为redis本身同步数据文件是按上面save条件来同步的,所以有的数据会在一段时间内只存在于内存中。默认为no
appendonly yes
# 指定更新日志文件名,默认为appendonly.aof
# appendfilename appendonly.aof
# 指定更新日志条件,共有3个可选值:
# no:表示等操作系统进行数据缓存同步到磁盘(快)
# always:表示每次更新操作后手动调用fsync()将数据写到磁盘(慢,安全)
# everysec:表示每秒同步一次(折衷,默认值)
appendfsync everysec
# appendfsync no
no-appendfsync-on-rewrite no
auto-aof-rewrite-percentage 100
auto-aof-rewrite-min-size 64mb
################################## SLOW LOG ###################################
# log日志的数量
slowlog-log-slower-than 10000
# There is no limit to this length. Just be aware that it will consume memory.
# You can reclaim memory used by the slow log with SLOWLOG RESET.
slowlog-max-len 1024
############################### 高级设置###############################
# 指定在超过一定的数量或者最大的元素超过某一临界值时,采用一种特殊的哈希算法
# hash-max-zipmap-entries 512
# hash-max-zipmap-value 64
# 小的哈希列表排序编码,才用下面设置
list-max-ziplist-entries 512
list-max-ziplist-value 64
set-max-intset-entries 512
# 原数排序大小限制:
zset-max-ziplist-entries 128
zset-max-ziplist-value 64
# 指定是否激活重置哈希,默认为开启
activerehashing yes
安装Redis
# 创建网络[独立网络,和其他容器分开]
docker network create myRedisNet
# 进入文件夹
cd /home/data/redisData/compose
# 编排容器
docker-compose up -d
# 查看docker容器
docker ps
小结: