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版本。

添加订阅主题

查看队列

发送和接收消息

相关推荐
前端技术7 分钟前
【鸿蒙实战】从零打造智能物联网家居控制系统:HarmonyOS Next分布式能力的完美诠释
java·前端·人工智能·分布式·物联网·前端框架·harmonyos
aini_lovee9 分钟前
33节点配电网分布式发电(DG)最优分布MATLAB实现
分布式·matlab·wpf
不爱编程的小陈9 分钟前
自研基于Raft的高性能分布式KV存储系统(一)
分布式
珠海西格10 分钟前
聚焦痛点|分布式光伏消纳困境的三大表现及红区治理难点
服务器·网络·分布式·安全·区块链
Vic1010115 分钟前
java的分布式协议
java·开发语言·分布式
黑金白土16 分钟前
OpenClaw + Docker + MiniMax 本地养“龙虾”方案
docker·minimax·openclaw·龙虾·龙虾本地部署
Mr.朱鹏16 分钟前
分布式-redis主从复制架构
java·spring boot·redis·分布式·缓存·架构·java-ee
Mr.朱鹏24 分钟前
分布式-redis哨兵模式架构
数据库·redis·分布式·spring·缓存·架构·java-ee
河码匠24 分钟前
rabbitmq 基本操作
rabbitmq
电气铺二表姐1377441661525 分钟前
智能虚拟电厂系统 分布式能源集中调度 支持多协议并网控制
分布式·能源