RabbitMQ docker部署,并启用MQTT协议

在Docker中部署RabbitMQ容器并启用MQTT插件的步骤如下:

一、准备工作

  1. 安装Docker:
  • 确保系统上已安装Docker。Docker是一个开源的容器化平台,允许以容器的方式运行应用程序。可以在Docker官方网站上找到适合操作系统的安装包,并按照指引进行安装。
  1. 选择RabbitMQ镜像:
  • RabbitMQ官方在Docker Hub上提供了多个版本的镜像,包括带有管理插件的镜像。可以选择适合需求的镜像版本。例如,rabbitmq:management镜像包含了RabbitMQ的管理插件,方便通过Web界面管理RabbitMQ。

二、部署RabbitMQ容器

  1. 拉取RabbitMQ镜像:
  • 打开终端或命令行界面,运行以下命令来拉取RabbitMQ镜像(以rabbitmq:management为例):
bash 复制代码
docker pull rabbitmq:management
  1. 创建并启动RabbitMQ容器:
  • 使用docker run命令创建并启动RabbitMQ容器。可以根据需要设置容器的名称、端口映射等参数。以下是一个示例命令,该命令创建了一个名为rabbitmq-container的容器,并映射了必要的端口(包括用于MQTT的1883端口):
bash 复制代码
docker run -d --name rabbitmq-container -p 5672:5672 -p 15672:15672 -p 1883:1883 rabbitmq:management
  • 参数说明:
    • -d:以后台模式运行容器。
    • --name rabbitmq-container:指定容器的名称为rabbitmq-container。
    • -p 5672:5672:将容器内部的5672端口映射到主机的5672端口(用于AMQP协议)。
    • -p 15672:15672:将容器内部的15672端口映射到主机的15672端口(用于RabbitMQ管理界面)。
    • -p 1883:1883:将容器内部的1883端口映射到主机的1883端口(用于MQTT协议)。

三、启用MQTT插件

  1. 进入RabbitMQ容器:
  • 使用docker exec命令进入RabbitMQ容器的shell界面。以下命令以rabbitmq-container为例:
bash 复制代码
docker exec -it rabbitmq-container bash
  1. 启用MQTT插件:
  • 在容器内部,运行以下命令来启用MQTT插件:
bash 复制代码
rabbitmq-plugins enable rabbitmq_mqtt
  1. 退出容器:
  • 完成插件启用后,可以通过输入exit命令来退出容器的shell界面。

四、验证MQTT插件是否启用

  • 可以通过访问RabbitMQ的管理界面(通常是通过浏览器访问http://localhost:15672,使用默认的用户名guest和密码guest登录,注意这些默认凭证可能因配置而异)来验证MQTT插件是否已成功启用。
  • 在管理界面中,点击"Admin"选项卡,然后选择"Plugins"来查看已启用的插件列表。应该能在列表中看到rabbitmq_mqtt插件。

MQTTX 客户端验证

下载地址:https://mqttx.app/zh
登录

注意MQTT Version 选择3.1版本。

添加订阅主题

查看队列

发送和接收消息

相关推荐
爱打lan球的程序员3 小时前
redis分布式锁和lua脚本
数据库·redis·分布式
别挡3 小时前
CentOS Stream 8中安装和使用 Docker
linux·docker·centos
愤怒的代码4 小时前
Centos使用阿里云镜像安装docker
linux·docker·centos
汪公子4925 小时前
使用docker部署考试系统
docker
好奇的菜鸟6 小时前
如何使用Docker快速启动Nginx服务器
服务器·nginx·docker
spiker_6 小时前
使用 RabbitMQ 和 Go 构建异步订单处理系统
golang·rabbitmq·ruby
花菜回锅肉7 小时前
开源可视化大屏superset Docker环境部署
数据仓库·docker·容器·开源·superset
wd5205217 小时前
常用环境部署(十七)——Docker安装pritunl+openvpn
运维·docker·容器
Watermelo6178 小时前
在线编程实现!如何在Java后端通过DockerClient操作Docker生成python环境
java·spring boot·docker·微服务·云原生·容器·devops
摸鱼的张三9 小时前
Docker的基本概念和优势
docker