谷粒商城实战笔记-250-商城业务-消息队列-RabbitMQ安装-Docker

一,docker安装RabbitMq

RabbitMQ 是一个开源的消息代理软件,广泛用于实现异步通信和应用程序解耦。

使用 Docker 容器化技术可以简化 RabbitMQ 的安装和部署过程。

以下是使用 Docker 安装 RabbitMQ 的详细步骤。

步骤 1: 安装 Docker

如果您的系统尚未安装 Docker,请访问 Docker 官网下载并安装 Docker Desktop 或 Docker Engine。

步骤 2: 拉取 RabbitMQ 镜像

打开终端或命令提示符,执行以下命令来拉取 RabbitMQ 的官方 Docker 镜像:

bash 复制代码
docker pull rabbitmq:management

这个命令会从 Docker Hub 拉取带有管理界面的 RabbitMQ 镜像。

步骤 3: 运行 RabbitMQ 容器

使用如下Docker 命令运行 RabbitMQ 容器。

bash 复制代码
docker run -d --name rabbitmq -p 5671:5671 -p 5672:5672 -p 4369:4369 -p 25672:25672 -p 15671:15671 -p 15672:15672 rabbitmq:management

命令参数解释:

  • docker run:这是 Docker 的命令,用于创建并启动一个新的容器。

  • -d:表示以守护进程模式运行容器,即在后台运行。

  • --name rabbitmq:指定容器的名称为 rabbitmq

  • -p 5671:5671:将容器内部的 5671 端口映射到宿主机的 5671 端口。这个端口通常用于 RabbitMQ 的 EPMD 协议,用于节点发现和集群形成。

  • -p 5672:5672:将容器内部的 5672 端口映射到宿主机的 5672 端口,这是 AMQP 协议的默认端口。

  • -p 4369:4369:将容器内部的 4369 端口映射到宿主机的 4369 端口,这是 RabbitMQ 的集群节点之间的通信端口。

  • -p 25672:25672:将容器内部的 25672 端口映射到宿主机的 25672 端口,这是 RabbitMQ 的管理插件的 HTTP 接口。

  • -p 15671:15671:将容器内部的 15671 端口映射到宿主机的 15671 端口,这是 RabbitMQ 的管理插件的 HTTPS 接口。

  • -p 15672:15672:将容器内部的 15672 端口映射到宿主机的 15672 端口,这是 RabbitMQ 管理界面的默认 HTTP 端口。

  • rabbitmq:management:指定使用的 Docker 镜像名称和标签,这里是 RabbitMQ 的官方管理界面镜像。

步骤 4: 验证 RabbitMQ 容器

使用以下命令查看容器是否正在运行:

bash 复制代码
docker ps

如果 RabbitMQ 容器正在运行,你会在列表中看到它。

步骤 5: 访问 RabbitMQ 管理界面

打开浏览器,访问 http://localhost:15672。默认的登录凭证是 guest/guest

步骤 6: 配置 RabbitMQ

在管理界面中,你可以执行以下操作:

  • 创建新的用户和虚拟主机。
  • 设置用户权限。
  • 查看队列、交换器和绑定的状态。

步骤 7: 使用 RabbitMQ

现在 RabbitMQ 已经安装并运行,你可以开始使用它来发送和接收消息了。你可以使用任何支持 AMQP 协议的客户端库来与 RabbitMQ 交互。

步骤 8: 停止和删除 RabbitMQ 容器

当你完成测试或需要停止 RabbitMQ 服务时,可以使用以下命令:

bash 复制代码
docker stop rabbitmq-server

如果需要删除容器,可以使用以下命令:

bash 复制代码
docker rm rabbitmq-server

步骤 9: 持久化数据

默认情况下,RabbitMQ 在 Docker 容器中使用的数据是临时的,容器删除后数据也会丢失。如果你需要持久化数据,可以挂载卷:

bash 复制代码
docker run -d --hostname my-rabbit --name rabbitmq-server \
  --publish 5672:5672 --publish 15672:15672 \
  --volume /path/to/rabbitmq/data:/var/lib/rabbitmq \
  rabbitmq:management

/path/to/rabbitmq/data 替换为你希望存储数据的宿主机路径。

相关推荐
鸠摩智首席音效师1 小时前
Docker 中如何限制CPU和内存的使用 ?
docker·容器
Michaelwubo1 小时前
Docker dockerfile镜像编码 centos7
运维·docker·容器
jingyu飞鸟1 小时前
centos-stream9系统安装docker
linux·docker·centos
好像是个likun2 小时前
使用docker拉取镜像很慢或者总是超时的问题
运维·docker·容器
冷眼看人间恩怨2 小时前
【Qt笔记】QDockWidget控件详解
c++·笔记·qt·qdockwidget
来一杯龙舌兰4 小时前
【RabbitMQ】RabbitMQ保证消息不丢失的N种策略的思想总结
分布式·rabbitmq·ruby·持久化·ack·消息确认
玖疯子4 小时前
介绍 Docker 的基本概念和优势,以及在应用程序开发中的实际应用。
docker
暴富的Tdy4 小时前
【快速上手Docker 简单配置方法】
docker·容器·eureka
Karoku0665 小时前
【k8s集群应用】kubeadm1.20高可用部署(3master)
运维·docker·云原生·容器·kubernetes
豆豆豆豆变5 小时前
docker之compose篇
docker·容器·自动化运维