推荐使用官方 rabbitmq:3.13-management 镜像部署,挂载 /var/lib/rabbitmq 实现数据持久化,开放 5672 和 15672 端口,设置默认用户密码并配置时区,通过 docker logs 确认启动后访问管理界面。

直接用 Docker 部署 RabbitMQ 是最轻量、最可控的方式,关键在于选对镜像、挂对路径、开对端口。官方 rabbitmq:3.13-management 镜像是当前(2026年)推荐的稳定 LTS 版本,自带管理界面和完整依赖,无需手动装 Erlang。
拉取并验证镜像
先确认 Docker 正常运行:
-
docker --version查版本 -
docker info看服务状态
然后拉取带管理界面的官方镜像:
docker pull rabbitmq:3.13-management- 不要用
rabbitmq:latest,它可能指向不稳定开发版 - 若网络受限,可用
docker load -i rabbitmq.tar离线加载
启动容器并持久化数据
一条命令完成启动,重点是挂载 /var/lib/rabbitmq 路径:
- 创建宿主机目录:
mkdir -p /opt/rabbitmq/data - 运行容器:
docker run -d \--name rabbitmq \--restart=always \-p 5672:5672 \-p 15672:15672 \-v /opt/rabbitmq/data:/var/lib/rabbitmq \-e RABBITMQ_DEFAULT_USER=admin \-e RABBITMQ_DEFAULT_PASS=Admin@2026 \-e TZ=Asia/Shanghai \rabbitmq:3.13-management -
注意:挂载路径必须是
/var/lib/rabbitmq,不是 conf 或 log,否则队列和消息无法持久化
验证服务与访问管理界面
别急着打开浏览器,先看日志确认就绪:
-
docker ps | grep rabbitmq—— 确认状态为Up -
docker logs -f rabbitmq | grep "Server startup complete"—— 出现该提示才代表真正启动完成 - 浏览器访问
http://[服务器IP]:15672,用上面设置的账号密码登录 - 首次登录后建议在 Admin → Virtual Hosts 中新建独立 vhost(如
/order),避免所有应用共用默认/
进阶:改用 docker-compose 更可靠
相比裸 docker run,docker-compose.yml 更易维护、支持健康检查和资源调优:
- 用命名卷替代绝对路径,例如
volumes: [rabbitmq_data:/var/lib/rabbitmq] - 添加健康检查:
healthcheck: { test: ["CMD", "curl", "-f", "http://localhost:15672/api/whoami"] } - 把密码等敏感信息写进
.env文件,避免硬编码在 YAML 中 - 可配置
ulimits(如nofile: 65536)应对高并发连接











