rabbitMQ通过Dockerfile安装延迟插件

简介

我查到的教程是在建立好镜像后手动将插件拷贝到容器里再安装的,这种方式显然不合适有多个rabbitMQ的情况。
我的思路是:重新生成一个安装了插件的镜像

方法

插件下载地址,注意版本对应关系
将插件拷贝到服务器上在这里插入图片描述
准备写Dockerfile和docker-compose.yml(这个可以不写,但是写了方便测试)
Dockerfile

FROM rabbitmq:management
ADD rabbitmq_delayed_message_exchange-3.9.0.ez plugins/rabbitmq_delayed_message_exchange-3.9.0.ez
RUN rabbitmq-plugins enable rabbitmq_delayed_message_exchange

docker-compose.yml

version: "3.9"
services:
  rabbitmq2:
    build: .
    container_name: rabbitmq2
    environment:
      - RABBITMQ_DEFAULT_USER=admin
      - RABBITMQ_DEFAULT_PASS=admin
    ports:
      - "15672:15672"
      - "5672:5672"

然后运行

# 可以先不加-d,在前台运行,看看日志信息
docker-compose up -d --build

即可完成安装并启动容器
如果你不是用docker-compose,则直接 build 成新的镜像,然后和运行即可

# build
docker build -t rabbitmq2 .
# 运行
docker run -d \
--name rabbitmq2 \
-e RABBITMQ_DEFAULT_USER=admin \
-e RABBITMQ_DEFAULT_PASS=admin \
-p 15672:15672 \
-p 5672:5672 \
rabbitmq2

你可能感兴趣的:(Docker,docker,java-rabbitmq,rabbitmq)