【物联网】EMQX(二)——docker快速搭建EMQX 和 MQTTX客户端使用

这篇具有很好参考价值的文章主要介绍了【物联网】EMQX(二)——docker快速搭建EMQX 和 MQTTX客户端使用。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一、前言

在上一篇文章中,小编向大家介绍了物联网必然会用到的消息服务器EMQ,相信大家也对EMQ有了一定的了解,那么接下来,小编从这篇文章正式开始展开对EMQ的学习教程,本章节来记录一下如何对EMQ进行安装。

二、使用Docker快速安装EMQ

EMQ作为第三方中间件,可以安装到很多种平台上,比如macOS、windows、Centos、Ubuntu等等。安装部署非常的简单,下面小编亿在mac上进行docker安装为例,展示一下安装过程。当然在生产环境,最好还是使用物理机部署emq,保证emq的稳定。

Docker容器开发,相信大家应该或多或少有所了解,了解的同学可以直接跳过docker的安装过程,如果不了解,大家可以参看一下小编下面的文章,简单介绍了docker是什么?以及如何使用docker简单的搭建容器:

【Docker】容器技术黑马Docker(一)——了解容器技术,了解Docker

【Docker】容器技术黑马Docker(二)——安装与基本命令的使用

接下来我们将在docker上安装emq容器,并进行消息的发送和订阅

下载EMQ镜像

小编这里使用的是mac版本的docker,安装好docker后,我们直接执行命令,来拉取emq的镜像:

运行一下命令获取Docker镜像:

docker pull emqx/emqx:5.3.2

执行完命令,就可以看到 Status: Downloaded newer image for emqx/emqx:5.3.2 这样的提示,表示下载镜像完成了。
【物联网】EMQX(二)——docker快速搭建EMQX 和 MQTTX客户端使用,➤ EMQX,物联网,docker,容器

tips: 如果发现下载不下来,可能是配置的docker源的问题,可以使用下面命令来查看使用的是哪个下载的源:

docker info | grep Registry

【物联网】EMQX(二)——docker快速搭建EMQX 和 MQTTX客户端使用,➤ EMQX,物联网,docker,容器

如果发现是外国的源,我们可以替换为国内常用的 阿里云的源,进行下载

docker login registry.cn-hangzhou.aliyuncs.com

【物联网】EMQX(二)——docker快速搭建EMQX 和 MQTTX客户端使用,➤ EMQX,物联网,docker,容器
注意这里需要使用阿里云的账号进行登录,需要在阿里云的容器平台注册账号,而不是阿里云的登录账号密码
详情可以参看:

docker切换阿里云源

这样我们下载好镜像,可以通过下面命令看到已经有的镜像

docker images

【物联网】EMQX(二)——docker快速搭建EMQX 和 MQTTX客户端使用,➤ EMQX,物联网,docker,容器

运行Docker容器

运行以下命令启动Docker容器:

docker run -d --name emqx -p 1883:1883 -p 8083:8083 -p 8084:8084 -p 8883:8883 -p 18083:18083 emqx/emqx:5.3.2

命令的解释如下:
-d:以分离模式(detached mode)运行容器。这意味着容器将在后台运行,而不会将控制台输出连接到当前终端。
–name emqx:为容器指定一个名称,这里将容器命名为 emqx。
-p 1883:1883:将容器的端口 1883 映射到主机的端口 1883。这意味着容器内的应用程序可以在端口 1883 上接收来自主机的连接。
-p 8083:8083:将容器的端口 8083 映射到主机的端口 8083。这意味着容器内的应用程序可以在端口 8083 上接收来自主机的连接。
-p 8084:8084:将容器的端口 8084 映射到主机的端口 8084。这意味着容器内的应用程序可以在端口 8084 上接收来自主机的连接。
-p 8883:8883:将容器的端口 8883 映射到主机的端口 8883。这意味着容器内的应用程序可以在端口 8883 上接收来自主机的连接。
-p 18083:18083:将容器的端口 18083 映射到主机的端口 18083。这意味着容器内的应用程序可以在端口 18083 上接收来自主机的连接。
emqx/emqx:5.3.2:指定要运行的镜像。这里使用的是 emqx/emqx 镜像的 5.3.2 版本。这个镜像包含了一个名为 emqx 的应用程序。
这个命令的整体效果是在后台运行一个名为 emqx 的容器,容器内运行着一个名为 emqx 的应用程序。容器的端口 1883、8083、8084、8883 和 18083 都被映射到主机的对应端口上,这样主机就可以通过这些端口与容器内的应用程序进行通信。

【物联网】EMQX(二)——docker快速搭建EMQX 和 MQTTX客户端使用,➤ EMQX,物联网,docker,容器
这样就运行起来了。

查看EMQ的dashboard

访问本机的 http://localhost:18083/#/login?to=/dashboard/overview ,登录emq的dashboard,默认用户名admin,密码public

【物联网】EMQX(二)——docker快速搭建EMQX 和 MQTTX客户端使用,➤ EMQX,物联网,docker,容器

登录成功后:

在首页,一共包含了三个tab页面:

  • 概览:显示整个集群内数据的概况,可以看到总连接数,在线连接数等
  • 节点:查看集群中的节点列表和节点信息,
  • 指标:查看集群或单个节点内所有的数据指标

【物联网】EMQX(二)——docker快速搭建EMQX 和 MQTTX客户端使用,➤ EMQX,物联网,docker,容器
【物联网】EMQX(二)——docker快速搭建EMQX 和 MQTTX客户端使用,➤ EMQX,物联网,docker,容器
【物联网】EMQX(二)——docker快速搭建EMQX 和 MQTTX客户端使用,➤ EMQX,物联网,docker,容器
其他的模块,大家可以点点看看。这里不做太多的介绍了。

三、MQTTX客户端连接EMQ

接下来我们介绍一下MQTTX客户端连模拟一下生产者和消费者。
首先我们下载一个MQTTX客户端:
我们可以在EMQ官网的首页 ,进行下载,选择对应平台下载即可。

【物联网】EMQX(二)——docker快速搭建EMQX 和 MQTTX客户端使用,➤ EMQX,物联网,docker,容器
下载后安装打开,会看到如下的界面:

【物联网】EMQX(二)——docker快速搭建EMQX 和 MQTTX客户端使用,➤ EMQX,物联网,docker,容器
建立一个新链接:
【物联网】EMQX(二)——docker快速搭建EMQX 和 MQTTX客户端使用,➤ EMQX,物联网,docker,容器
然后建立一个订阅topic ,这里小编建立的是emq这个名字,我们向这个topic发送消息,同时也订阅这个消息。
当我们向 这个emq这个topic发送了 hello消息。这个时候可以看到也收到了一条消息。
【物联网】EMQX(二)——docker快速搭建EMQX 和 MQTTX客户端使用,➤ EMQX,物联网,docker,容器

我们再次去后台看一下:
在客户端模块 可以看到此时有一个客户端连接上来。
【物联网】EMQX(二)——docker快速搭建EMQX 和 MQTTX客户端使用,➤ EMQX,物联网,docker,容器
【物联网】EMQX(二)——docker快速搭建EMQX 和 MQTTX客户端使用,➤ EMQX,物联网,docker,容器

四、小结

通过上面的安装学习,相信大家已经了解了EMQ这个消息中间件是如何处理消息的。其实还是通过学习老的知识,对比学习会有更大的收获,和kafka做对比。相比之下,emq在硬件上使用是更加方便的,举个例子,家里的小米智能家居是如何收到我们的操作指令的呢?我们手机控制灯关闭,开启。其实也就是先发送消息到EMQ消息中间件上,台灯订阅的EMQ的消息TOPIC,当有消息来的时候,就会收到消息,从而做出对应的动作。

期望您的到来,请查看:

【物联网】EMQX(一)——EMQ是什么?物联网竟然用这个?
【物联网】EMQX(二)——docker快速搭建EMQX 和 MQTTX客户端使用
【物联网】EMQX(三)——如何使用SSL/TLS双向认证连接EMQX?
【物联网】EMQX(四)——java服务端如何连接EMQ?
【物联网】EMQX(五)——待定文章来源地址https://www.toymoban.com/news/detail-771547.html

到了这里,关于【物联网】EMQX(二)——docker快速搭建EMQX 和 MQTTX客户端使用的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 如何快速搭建springboot+前后端分离(vue),多商户客户端实现微信小程序+ios+app使用uniapp(一处编写,处处编译)

    kxmalls外卖生鲜多商户,针对中小商户、企业和个人学习者开发。使用Java编码,采用SpringBoot、Mybatis-Plus等易用框架,适合个人学习研究。同时支持单机部署、集群部署,用户与店铺范围动态定位,中小商户企业可根据业务动态扩容。kxmalls使用uniapp前端框架,可同时编译到 微

    2024年01月25日
    浏览(44)
  • Docker RTMP服务器搭建与视频流推送示例(流媒体服务器tiangolo/nginx-rtmp,推流客户端ffmpeg)

    在这篇文章中,我将详述如何搭建一个RTMP(Real-Time Messaging Protocol)服务器,并使用ffmpeg技术进行本地视频的推流。最后,我们将使用VLC播放器来播放这个RTMP流。 首先,我们需要搭建一个RTMP服务器。为了方便起见,我们将选择Docker作为服务器的环境。Docker的轻量化和可移植

    2024年01月17日
    浏览(41)
  • 【物联网】超级好用的MQTT客户端软件(MQTTfx下载和安装)

    MQTT.fx是一款基于Eclipse Paho,使用Java语言编写的MQTT客户端工具。支持通过Topic订阅和发布消息,用来前期和物理云平台调试非常方便。 它是一个用Java编写的MQTT客户端库,可以帮助开发人员在Eclipse环境下快速开发MQTT应用程序。Mqtt.fx提供了一系列功能,包括创建和管理连接,

    2024年02月12日
    浏览(57)
  • 阿里云AliYun物联网平台使用-客户端API获取设备传感数据

            上一篇文章中,已经实现了虚拟数据上云,本文我们将进行上位机客户端的开发,即通过调用阿里云IOT物联网云平台的SDK,开发能获取传感器的遥感数据。         调用API需要用户的AccessKey Secret,这意味着客户端将取得主体账号的所有权限。为了防止恶意用户通过

    2024年02月16日
    浏览(43)
  • Unity进阶–通过PhotonServer实现联网登录注册功能(客户端)–PhotonServer(三)

    单例泛型类 ManagerBase 消息中心 manager下的组件基础 uiManager(绑在canvas上) PhotonManager 搭个页面 panel上挂上脚本 绑定对象,绑定事件

    2024年02月12日
    浏览(74)
  • 【0815作业】搭建select的TCP客户端、poll客户端、tftp文件上传

    IO多路复用(重点!!!) 进程中如果同时需要处理多路输入输出流,在使用单进程单线程的情况下,同时处理多个输入输出请求。 在无法用多进程多线程,可以选择用IO多路复用; 由于不需要创建新的进程和线程,减少系统的资源开销,减少上下文切换的次数。 允许同时

    2024年02月12日
    浏览(30)
  • Docker客户端命令

    使用  podman  模拟  Docker CLI  的功能,并创建  /etc/containers/nodocker  文件以静默消息。管理 pods、容器和镜像。 用法: podman [选项] [命令] 命令 : attach 附加到一个正在运行的容器 auto-update 根据容器的自动更新策略自动更新容器 build 使用 Containerfiles 中的指令构建镜像 commi

    2024年04月14日
    浏览(31)
  • cas服务端、客户端搭建

    1、下载cas包 https://github.com/apereo/cas-overlay-template/tree/5.3 这好像是最后一个maven版本的,之后都是grade版本的 2、使用idea打开代码,导入依赖 3、新建src目录、resource目录 4、复制cas-server-webapp-tomcat下的services、applicaiton.properties目录到resources目录下 5、修改resources/services/HTTPSandIM

    2024年02月10日
    浏览(35)
  • 使用Flutter构建ChatGPT客户端:快速入门指南

    在本篇博客文章中,我们将通过OpenAI的API构建一个简单的对话界面,与ChatGPT进行聊天。 近来OpenAI和ChatGPT的热度很高,尤其是最近发布的GPT-4。这类工具的大量使用案例已经涌现出来,但目前人们最常用ChatGPT的方式是通过chat.openai.com进行聊天。我一直在使用ChatGPT来激发灵感、

    2024年02月05日
    浏览(32)
  • solr快速上手:整合SolrJ实现客户端操作(九)

    我们前面学习了solr的服务端基础操作,实际项目中我们还需要在客户端调用solr,就像调用数据库一样,我们可以基于 solrJ 来实现对solr的客户端操作 SolrJ 是 Solr官方提供的 Java 客户端库,主要用于与 Solr 服务器进行交互。内部封装了一组API,可以方便地实现对solr服务端的各

    2024年02月10日
    浏览(29)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包