1.RabbitMQ Docker 基础安装

映射核心端口(5672:AMQP 协议端口,15672:管理界面端口),挂载数据卷实现持久化,设置默认账号密码(可自定义):

docker pull rabbitmq:4.2.0-management
# 启动rabbitmq
docker run -d \
  --name rabbitmq-delayed \
  -p 5672:5672 \
  -p 15672:15672 \
  -v /data/rabbitmq/data:/var/lib/rabbitmq \
  -e RABBITMQ_DEFAULT_USER=admin \
  -e RABBITMQ_DEFAULT_PASS=admin@2025 \
  --restart=always \
  rabbitmq:4.2.0-management
  • 验证启动:访问 http://你的服务器IP:15672,输入账号密码(admin/123456),能正常登录即安装成功。

2.延迟插件安装(核心:版本完全匹配)

步骤1:确定RabbitMQ版本

# 进入RabbitMQ容器
docker exec -it rabbitmq-delayed /bin/bash

# 查看RabbitMQ精确版本(执行后复制版本号,如3.12.14)
rabbitmqctl version

步骤2:下载延迟插件

延迟插件官方下载地址:RabbitMQ 社区插件库

打开地址后,根据步骤 1 获取的版本号,选择完全一致的插件版本(如 RabbitMQ3.12.14,就下载v3.12.14版本);

下载后缀为 .ez 的文件(插件核心文件,如rabbitmq_delayed_message_exchange-3.12.14.ez)。

步骤 3:将插件文件复制到 Docker 容器内的插件目录

RabbitMQ Docker 容器的默认插件目录为 /plugins,使用docker cp命令将本地下载的.ez文件复制到容器:

# 语法:docker cp 本地插件文件路径 容器名/ID:/plugins
# 示例(替换为你的本地文件路径和容器名)
docker cp /本地下载路径/rabbitmq_delayed_message_exchange-3.12.14.ez rabbitmq-delayed:/plugins

步骤 4:启用延迟插件(容器内执行)

进入容器,通过rabbitmq-plugins命令启用插件,启用后插件立即生效(无需重启 RabbitMQ):

# 1. 进入容器
docker exec -it rabbitmq-delayed /bin/bash

# 2. 启用延迟插件(直接执行,无需改版本号)
rabbitmq-plugins enable rabbitmq_delayed_message_exchange

# 3. 验证插件是否启用成功(可选,执行后能看到插件名即成功)
rabbitmq-plugins list

启用成功的提示示例:

plaintext

The following plugins have been enabled:
  rabbitmq_delayed_message_exchange

Applying plugin configuration to rabbit@f9f7a8b2c345... started 1 plugin.

步骤 5:验证延迟插件是否正常可用

重新访问 RabbitMQ 管理界面 http://服务器IP:15672,登录后进入Exchanges(交换机)页面;

点击Add a new exchange(新建交换机),在Type(类型)下拉框中,若能看到 x-delayed-message 选项,说明插件安装并启用成功。

更多推荐