2024-11-13
项目部署
0

目录

使用 Docker 安装和使用 RabbitMQ
一、前置条件
1. 拉取 RabbitMQ 镜像
2. 启动 RabbitMQ 容器
3. 脚本说明
4. 执行脚本
三、访问 RabbitMQ Web 管理界面
四、管理 RabbitMQ 容器
五、总结

使用 Docker 安装和使用 RabbitMQ

一、前置条件

  1. 操作系统要求:适用于 CentOS 7 或更高版本的 Linux 系统。

  2. 安装 Docker:确保系统已安装并启动 Docker。如果还未安装,请参考 Docker 官方文档或使用以下命令安装:

    bash
    sudo yum install -y yum-utils device-mapper-persistent-data lvm2 sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo sudo yum install -y docker-ce docker-ce-cli containerd.io

    启动 Docker 服务:

    bash
    sudo systemctl start docker sudo systemctl enable docker

二、RabbitMQ 安装和启动

RabbitMQ 是一个流行的消息中间件,Docker 提供了官方的 RabbitMQ 镜像,可以方便地部署和管理。

1. 拉取 RabbitMQ 镜像

使用以下命令拉取 RabbitMQ 官方 Docker 镜像:

bash
sudo docker pull rabbitmq:3.9.21

2. 启动 RabbitMQ 容器

使用 Docker 启动一个新的 RabbitMQ 容器。您可以使用以下脚本来启动 RabbitMQ:

bash
#!/bin/bash # docker启动rabbitmq脚本,记得进入容器执行:rabbitmq-plugins enable rabbitmq_management方可使用web页面 # 停止旧容器运行 docker stop rabbitmq # 删除旧容器 docker rm rabbitmq # 启动 RabbitMQ 容器 docker run -itd \ --privileged=true \ -p 25672:5672 \ # RabbitMQ 内部的 AMQP 通信端口 -p 15672:15672 \ # RabbitMQ 管理界面端口 -e RABBITMQ_DEFAULT_USER=username \ # 默认用户名 -e RABBITMQ_DEFAULT_PASS=password \ # 默认密码 -e RABBITMQ_DEFAULT_VHOST=dev \ # 默认虚拟主机 --name rabbitmq \ # 容器名称 --restart=always \ # 容器重启策略 rabbitmq:3.9.21 # 使用的 RabbitMQ 镜像版本 # 启用 RabbitMQ 管理插件 docker exec rabbitmq rabbitmq-plugins enable rabbitmq_management exit 0

3. 脚本说明

  • docker stop rabbitmq:停止旧的 RabbitMQ 容器(如果存在)。

  • docker rm rabbitmq:删除旧的 RabbitMQ 容器。

  • docker run:启动新的 RabbitMQ 容器,并设置一些环境变量和配置:

    • -p 25672:5672:映射 RabbitMQ 的 AMQP 通信端口 5672 到宿主机的 25672 端口。
    • -p 15672:15672:映射 RabbitMQ 管理 UI 的端口 15672 到宿主机的相同端口。
    • -e RABBITMQ_DEFAULT_USER=用户名:设置 RabbitMQ 的默认用户名。
    • -e RABBITMQ_DEFAULT_PASS=密码:设置 RabbitMQ 的默认密码。
    • -e RABBITMQ_DEFAULT_VHOST=dev:设置默认虚拟主机 dev
    • --restart=always:设置容器自动重启策略,确保容器在崩溃或系统重启后自动启动。
  • docker exec rabbitmq rabbitmq-plugins enable rabbitmq_management:启用 RabbitMQ 的管理插件,这样您就可以通过 Web 界面访问 RabbitMQ。

4. 执行脚本

在 CentOS 系统中,将以上脚本保存为 start-rabbitmq.sh 文件,然后赋予执行权限并执行:

bash
chmod +x start-rabbitmq.sh ./start-rabbitmq.sh

这将启动 RabbitMQ 容器并启用管理插件。

三、访问 RabbitMQ Web 管理界面

  1. 访问 Web UI

在浏览器中访问 RabbitMQ 的管理界面:

http://<your-server-ip>:15672

输入您在脚本中设置的用户名和密码(默认是 usernamepassword),就可以登录到 RabbitMQ 的 Web 管理界面。

  1. 常见的管理功能
  • 虚拟主机:RabbitMQ 使用虚拟主机来隔离不同的消息队列,可以在 Web UI 中创建和管理虚拟主机。
  • 队列:管理消息队列,您可以查看队列中的消息数量、消费者数量等。
  • 交换机:管理交换机,并与队列进行绑定。
  • 用户管理:管理 RabbitMQ 用户和权限。

四、管理 RabbitMQ 容器

您可以通过以下命令管理 RabbitMQ 容器:

  • 停止 RabbitMQ 容器
bash
sudo docker stop rabbitmq
  • 启动 RabbitMQ 容器
bash
sudo docker start rabbitmq
  • 重启 RabbitMQ 容器
bash
sudo docker restart rabbitmq
  • 删除 RabbitMQ 容器
bash
sudo docker stop rabbitmq sudo docker rm rabbitmq
  • 查看 RabbitMQ 容器状态
bash
sudo docker ps

五、总结

通过 Docker 部署 RabbitMQ 是一种高效、简便的方式。通过上述步骤,您可以快速启动一个具有 Web 管理界面的 RabbitMQ 实例,并使用默认的用户名和密码进行访问。这个过程不仅简化了 RabbitMQ 的安装和配置,还确保了容器能够在系统重启后自动重启。

您可以根据需要定制 RabbitMQ 配置,添加更多的虚拟主机、队列、交换机以及权限设置,来满足生产环境的需求。

希望本教程对您有所帮助!