RabbitMQ 安装教程【docker】

我用的系统是 CentOS 7

拉取镜像

官网如下

https://www.rabbitmq.com/

目前最新的版本是4.2版本,我就下载4.2版本了

复制代码
docker pull rabbitmq:4.2-management

带有 -management 后缀的版本自带 Web 管理界面

运行容器

复制代码
docker run -d \
  --name rabbitmq \
  --hostname my-rabbit \
  -p 5672:5672 \
  -p 15672:15672 \
  -v /mydata/rabbitmq:/var/lib/rabbitmq \
  -e RABBITMQ_DEFAULT_USER=snow \
  -e RABBITMQ_DEFAULT_PASS=123456 \
  --restart=always \
  rabbitmq:4.2-management

代码解释

  • -d (Detached):

后台运行。如果不加这个,容器的日志会占据你的控制台,一旦你按 Ctrl+C,服务就停了

  • --name rabbitmq:

给这个容器起个名字叫 rabbitmq

以后你可以直接用 docker stop rabbitmq 或 docker restart rabbitmq 来操作它,而不用去查随机生成的容器 ID

  • --hostname my-rabbit:

设置容器内部的虚拟主机名

每个虚拟主机相互独立,有各自的exchange、queue

如果你不指定,Docker 会生成一个随机字符串

  • -p 5672:5672:

5672 是 RabbitMQ 的 核心通信端口

Java 代码连接 MQ 时,填写的端口就是这个

  • -p 15672:15672:

15672 是 Web 管理界面的端口

在浏览器里访问页面用的就是这个端口

  • -v /mydata/rabbitmq:/var/lib/rabbitmq:

挂载数据卷

/mydata/rabbitmq 是 CentOS 宿主机 的目录(会自动创建)

/var/lib/rabbitmq 是 容器内部 存放消息数据的目录

即使你删除了这个容器,你的队列消息、交换机配置依然保存在 CentOS 的 /mydata/rabbitmq 目录下,不会丢失

  • -e RABBITMQ_DEFAULT_USER=snow:
  • -e RABBITMQ_DEFAULT_PASS=123456:

-e (Environment): 设置环境变量

设置默认登录用户名和默认登录密码,喜欢什么设置什么

  • --restart=always:

开机自启

如果 Docker 服务重启了,这个 RabbitMQ 容器会自动启动,不需要你手动去 start

  • rabbitmq:4.2-management:

指定要使用的镜像名称和版本

浏览器访问

复制代码
http://192.168.48.130:15672

换成你自己的虚拟机地址

相关推荐
叶总没有会1 天前
MQ基础与使用背景
rabbitmq
墨神谕2 天前
RabbitMQ 从入门到实战:核心原理、消息模型、可靠性机制与 Spring Boot 实战
spring boot·rabbitmq·java-rabbitmq
做个文艺程序员2 天前
MQ第07篇:Java SaaS多租户消息隔离实战:RabbitMQ VHost+RocketMQ Tag+命名空间架构
spring boot·rabbitmq·rocketmq·saas·多租户
j7~2 天前
【仿 RabbitMQ 项目】发布订阅消息队列 (篇九):队列数据管理,内存镜像 + SQLite 持久化实现
数据库·c++·分布式·sqlite·rabbitmq·队列数据管理
此时不提桶,更待何时3 天前
06-23-A-RabbitMQ生态集成详解
分布式·rabbitmq
m0_646429973 天前
RabbitMQ 核心知识总结(生产实战版)
分布式·rabbitmq
此时不提桶,更待何时3 天前
06-24-B-RabbitMQ面试与生产事故实战
分布式·面试·rabbitmq
此时不提桶,更待何时3 天前
06-17-A-RabbitMQ架构与存储原理详解
rabbitmq
做个文艺程序员4 天前
MQ第03篇:RabbitMQ进阶实战:Topic路由+死信队列+延迟消息,SaaS订单超时取消完整方案
分布式·消息队列·rabbitmq·死信队列·延迟队列
此时不提桶,更待何时4 天前
06-18-A-RabbitMQ消息特性与消费机制详解
分布式·rabbitmq