百度已收录

docker部署rabbitmq:3-management配置消息持久化

version: '3'

services:
  rabbit:
    image: rabbitmq:3-management
    container_name: "rabbitmq"
    hostname: rabbitmq # 持久化必须有,否则重启会重置hostname,持久化会失败
    restart: always
    ports:
      - "5672:5672"
      - "15672:15672"
    environment:
      - RABBITMQ_NODENAME: rabbit@localhost # 持久化必须有,否则重启会重置nodename,持久化会失败
      - RABBITMQ_DEFAULT_USER: guest
      - RABBITMQ_DEFAULT_PASS: *** # 根据实际情况设置
      - RABBITMQ_DEFAULT_VHOST: *** # 根据实际情况设置
    volumes:
      - ./data:/var/lib/rabbitmq
      - ./10-defaults.conf:/etc/rabbitmq/conf.d/10-defaults.conf # 更改管理界面路由
    networks:
      - localnet

networks:
  localnet:
    external: true
    name: localnet
    driver: bridge

更改管理界面路由

## DEFAULT SETTINGS ARE NOT MEANT TO BE TAKEN STRAIGHT INTO PRODUCTION
## see https://www.rabbitmq.com/configure.html for further information
## on configuring RabbitMQ

## allow access to the guest user from anywhere on the network
## https://www.rabbitmq.com/access-control.html#loopback-users
## https://www.rabbitmq.com/production-checklist.html#users
loopback_users.guest = false

## Send all logs to stdout/TTY. Necessary to see logs when running via
## a container
log.console = true
# 最重要的是这条,配置并挂载到容器内部以后,访问管理界面url由原来的http://IP:15672变成http://IP:15672/rabbit/
management.path_prefix = /rabbit