1.1 问题原因:
# 1 查看服务部署挂载的数据目录
cd /home/files/rabbitmq/data/mnesia
# 2 每次重启mq服务,数据文件名都会更新,导致读取最新的数据文件无法获取到之前持久的数据;
# 3 需要解决办法就需要数据文件名固定不变,所以需要添加 hostname 配置;
1.1.1 问题所在就是动态文件名:
1.1.2 解决后固定的数据文件名:
1.2 解决问题:部署rabbitmq环境时需要添加配置: " hostname: rabbitmq-okyun "
# compose.yaml
name: okyun
services:
rabbitmq:
container_name: rabbitmq
hostname: rabbitmq-okyun # 注意:固定主机名,用于生成稳定节点名,持久化数据必须设置!!!
image: rabbitmq:3.12.14-management
deploy:
resources:
limits:
memory: 2G
cpus: "1.5"
ports:
- "5672:5672"
- "15672:15672"
environment:
- RABBITMQ_DEFAULT_VHOST:okyun
- RABBITMQ_DEFAULT_USER=admin
- RABBITMQ_DEFAULT_PASS=123456
volumes:
- rabbitmq_plugin:/plugins
- ./rabbitmq/data:/var/lib/rabbitmq
- ./rabbitmq/log:/var/log/rabbitmq
- ./rabbitmq/config/rabbitmq.conf:/etc/rabbitmq/rabbitmq.conf
restart: unless-stopped
networks:
- okyun
volumes:
rabbitmq_plugin:
driver: local
networks:
okyun:
driver: bridge