Docker部署
配置文件
准备如下配置文件:
YAML文件
version: '3.9'
services:
redis:
image: redis:7.2.1 # 指定服务镜像,最好是与之前下载的redis配置文件保持一致
container_name: redis
restart: on-failure
environment:
- TZ=Asia/Shanghai
# 配置数据卷
volumes:
- /home/dockerdata/redis/data:/data
- /home/dockerdata/redis/redis.conf:/etc/redis/redis.conf
# 映射端口
ports:
- 6379:6379
sysctls:
- net.core.somaxconn=1024
# 使用指定配置文件运行
command: "redis-server /etc/redis/redis.conf" # 指定配置文件并开启持久化
privileged: true
redis.conf(单机模式,只显示需要调整的内容)
# 指定redis绑定的主机地址,可以设置指定的地址去访问,如果不限制可以直接注释掉
# bind 127.0.0.1 -::1
# 指定访问redis服务端的端口,内部端口可以不做任何调整,在对外映射的端口进行调整
port 6379
# 指定客户端连接redis服务器时,当闲置的时间为多少(如300)秒时关闭连接(0表示禁用)
timeout 120
# 默认情况下,Redis不作为守护进程运行。如果需要,请使用“yes”
daemonize no
# 安全设置
# 给redis设置密码,建议设置密码
requirepass 123456
# 设置外部网络连接redis服务,开启需配置bind ip或者设置访问密码,关闭此时外部网络可以直接访问,建议设置密码,并开启此配置
protected-mode yes
# 数据持久化
# RDB持久化
# 指定redis数据库多长时间内(save后的第一个参数)有多少次(save后的第二个)更新操作时就把缓存中的数据同步到本地库
save 900 1
save 300 10
save 60 10000
# 开启AOF持久化
appendonly yes
# 指定redis的最大内存。由于Redis 在启动时会把数据加载到内存中,当数据达到最大内存时,redis会自动把已经到期和即将到期的key值。所以可以根据需求调整自己的所需的最大内存
maxmemory 500mb
# 设置了maxmemory的选项,redis内存使用达到上限。可以通过设置LRU算法来删除部分key,释放空间。默认是按照过期时间的,如果set时候没有加上过期时间就会导致数据写满maxmemory
maxmemory-policy volatile-lru
参考
- Redis安装包下载地址:download.redis.io/releases/,通过该安装包可以下载指定版本的安装包,从中获取redis.conf