docker部署redis
·
拉取镜像
docker pull redis:7.4.2
创建文件夹
mkdir /opt/redis/data
touch /opt/redis/redis.conf
conf文件示例
# 基础配置
bind 0.0.0.0 # 允许所有 IP 连接
port 6379
daemonize no # Docker 必须设置为 no
protected-mode no # 关闭保护模式(若需要外网访问)
# 安全配置
requirepass your_strong_password_here # 设置密码
rename-command FLUSHDB "" # 禁用危险命令
# 持久化配置
appendonly yes # 启用 AOF 持久化
appendfsync everysec # 每秒同步
dir /data # 数据存储路径(需与 Docker 挂载目录一致)
# 资源限制
maxmemory 2gb # 最大内存限制
maxmemory-policy allkeys-lru # 内存淘汰策略
#运行容器
docker run --name redis \
-d --restart always \
-p 9006:6379 \
-v /opt/redis/redis.conf:/usr/local/etc/redis/redis.conf \
-v /opt/redis/data:/data \
redis:7.4.2 redis-server /usr/local/etc/redis/redis.conf \
--requirepass redisadmin \
--appendonly yes \
| /opt/redis/data:/data | 将数据持久化到宿主机 |
|---|---|
| /opt/redis/redis.conf:/usr/local/etc/redis/redis.conf | 挂载自定义配置文件 |
| redis-server /usr/local/etc/redis/redis.conf | 指定配置文件路径 |
| –requirepass redisadmin | 启用密码 |
| –appendonly yes | 启用 AOF 持久化 |
连接redis(Another Redis Desktop Manager)

Redis 默认不开启 Key 过期事件通知,需要修改 Redis 配置文件(redis.conf):
notify-keyspace-events Ex
Ex 表示启用 过期事件(E 是事件通知,x 是过期事件)
可选事件类型:
| 字符 | 发送的通知 |
|---|---|
| K | 键空间通知,所有通知以 keyspace@ 为前缀 |
| E | 键事件通知,所有通知以 keyevent@ 为前缀 |
| g | DEL 、 EXPIRE 、 RENAME 等类型无关的通用命令的通知 |
| $ | 字符串命令的通知 |
| l | 列表命令的通知 |
| s | 集合命令的通知 |
| h | 哈希命令的通知 |
| z | 有序集合命令的通知 |
| x | 过期事件:每当有过期键被删除时发送 |
| e | 驱逐(evict)事件:每当有键因为 maxmemory 政策而被删除时发送 |
| A | 参数 g$lshzxe 的别名 |
输入的参数中至少要有一个 K 或者 E , 否则的话, 不管其余的参数是什么, 都不会有任何通知被分发
// 监控任何数据格式的所有事件,包括键空间通知和键事件通知
notify-keyspace-events "AKE"
// 只监控字符串结构的所有事件,包括键空间通知和键事件通知
notify-keyspace-events "g$KExe"
// 只监控所有键事件通知
notify-keyspace-events "AE"
// 只监控Hash数据解构的键空间通知
notify-keyspace-events "ghKxe"
// 只监控Set数据结构的键事件通知
notify-keyspace-events "gsExe"
通过 Redis 命令行工具运行以下命令查看当前配置
魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。
更多推荐


所有评论(0)