Docker下使用docker-compose安装RabittMq及延时队列插件(delayed_message_exchange)

316 阅读1分钟
  • 编写docker-compose.yml
version: "3"
services:
  rabbitmq:
    hostname: rabbitmq
    container_name: rabbitmq
    image: rabbitmq:3.8.12-management
    ports:
      - "5672:5672"
      - "15672:15672"
    volumes:
      - ./data:/var/lib/rabbitmq
      - ./config/rabbitmq.sh:/etc/rabbitmq/rabbitmq.sh
    environment:
      - RABBITMQ_DEFAULT_USER=admin #rabbitmq 的登录账户
      - RABBITMQ_DEFAULT_PASS=admin #rabbitmq 的登录密码
    networks:
      - micr-net #使用自定义网络
    restart: always
networks: #创建网络
   micr-net:
  • 执行命令
docker-compose up -d
  • 防护墙开放端口156725672
  • 登录
http://docker宿主机IP:15672

在这里插入图片描述

  • 安装延时队列插件 1.下载插件 官网下载地址 如果觉得官网访问的太慢,也可使用本人提供的插件包(rabbitmq_delayed_message_exchange-3.8.0.ez) csdn下载地址 2.将插件上传至docker 宿主机 在这里插入图片描述 3.查看rabbitmq容器的Id
docker ps

在这里插入图片描述

3.在插件同一文件夹下执行如下命令,将插件拷贝至rabittmq容器内部 注:此处的298484bece4c就是步骤3中的容器ID

docker cp rabbitmq_delayed_message_exchange-3.8.0.ez 298484bece4c:/opt/rabbitmq/plugins

4.进入容器内部 注:此处的298484bece4c就是步骤3中的容器ID

docker exec -it 298484bece4c /bin/sh     

5.安装插件

rabbitmq-plugins enable rabbitmq_delayed_message_exchange

6.查看已安装的插件列表

rabbitmq-plugins list   

在这里插入图片描述 7.登录RabbitMQ的Web端管理界面,在Exchanges选项卡下,点击Add a new exchangeType里面看是否出现了x-delayed-message选项 在这里插入图片描述