docker 下的 redis.cnf
version: "3"
services:
redis:
container_name: rebloom
image: redislabs/rebloom:latest
ports:
- "6379:6379"
volumes:
- ./volumes:/data # /usr/local/redis/data 是你宿主机的门路;/data 是容器内的门路,容器内的 redis 会把须要长久化的数据都保留到 /data 目录下
- ./redis.conf:/etc/redis/redis.conf # redis.conf 这个文件曾经筹备好了,能够放到这个门路,也能够本人批改,比方放到我的项目门路中
restart: always
# 这个文件的地址,和你的 docker-compose.yaml 中的 /usr/local/redis/redis.conf:/etc/redis/redis.conf 冒号右边的要对应起来
# redis 反对两者长久化机制:RDB&AOF
# https://juejin.cn/post/6844903716290576392
appendonly yes
#default: 长久化文件
appendfilename "appendonly.aof"
#default: 每秒同步一次
appendfsync everysec
port 6379
# 绑定端口, 不指定外网可能连不上服务器
bind 0.0.0.0
复刻到 k8s 中却跑不通,会报错
解决办法:
apiVersion: v1
kind: ConfigMap
metadata:
name: crawler-bloom-redis-config
namespace: xxxxx
data:
redis-config: |
maxmemory 100mb
appendonly yes
appendfilename "appendonly.aof"
appendfsync everysec
loadmodule "/usr/lib/redis/modules/redisbloom.so"
退出 loadmodule "/usr/lib/redis/modules/redisbloom.so"
即可,至于为什么 docker 下不必加,k8s 中却要加,我就不晓得了。晓得的人能够贴到评论区