腾讯云服务器搭建EMQX服务器——使用docker安装
为什么要安装EMQX服务器
EMQ X 是一个开源的高可用分布式 MQTT 消息服务器,它实现了 MQTT 协议的服务端功能,并提供了支持大规模部署的分布式架构。
MQTT 是一种轻量级的消息发布/订阅协议,广泛应用于物联网(IoT)和移动应用中,用于实现设备之间的可靠通信。EMQ X 构建在 Erlang/OTP 平台上,利用 Erlang 的并发、容错和可扩展性特性,实现了高性能的 MQTT 消息处理和分布式集群功能。
EMQ X 具有以下特点和功能:
- MQTT 协议支持:EMQ X 是一个完全符合 MQTT 3.1.1 和 MQTT 5.0 标准的消息服务器,支持基于发布/订阅模式的消息传递和质量保证。
- 分布式集群架构:EMQ X 支持构建分布式集群,可以横向扩展以处理大量的连接和消息流。通过将节点组织成集群,实现高可用性和负载均衡。
- 可靠性和鲁棒性:EMQ X 提供了故障恢复、消息持久化、数据备份等机制,确保消息的投递和可靠性。
- 强大的插件系统:EMQ X 提供了丰富的插件系统,可以扩展和定制各种功能,如认证授权、存储后端、消息转发等。
- 可视化监控和管理:EMQ X 提供了易于使用的 Web 管理界面,可以监控集群状态、处理连接、发布/订阅信息,进行配置管理等操作。
借助 EMQ X,你可以快速构建高可用性和可伸缩性的 MQTT 消息系统,支持物联网和移动应用领域的消息传递需求。
安装EMQX
1.端口介绍
请确保一下端口已在服务器开放并不会被占用
• 1883:MQTT 协议端口
• 8084:MQTT/SSL 端口
• 8083:MQTT/WebSocket 端口
• 8080:HTTP API 端口
• 18083:Dashboard 管理控制台端口
- 安装 Docker:如果您已经安装了 docker,请跳过此步骤。如果您使用的是 Ubuntu 系统,请通过以下命令安装 Docker:
sudo apt-get update
sudo apt-get install docker.io
- 安装完成后,请通过以下命令验证 Docker 是否正确安装:
sudo docker --version
4.接下来,你可以使用 docker pull 命令来拉取所需的 Docker 镜像,如:
sudo docker pull emqx/emqx:4.2.14 /*如若一直不成功可以安装其他版本[emqx.com](https://www.emqx.com/zh/try?product=broker)*/
或者
sudo docker pull emqx/emqx:latest
5.一旦镜像下载完成,你就可以使用 Docker 命令来创建和管理容器,例如:
sudo docker run -d --name emqx -p 1883:1883 -p 8083:8083 -p 8084:8084 -p 8883:8883 -p 18083:18083 emqx/emqx:4.2.14
可以用一下命令查看容器的状态:
sudo docker ps -a
如上图所示代表容器运行成功!!!
请注意,安装 Docker 软件包和拉取 Docker 镜像是两个独立的步骤。安装 Docker 软件包只需要执行一次,而拉取Docker 镜像可能需要多次执行。同时要注意开发、测试和调试过程中,你可能需要多次运行 EMQ X 容器来进行不同的实验和配置调整。在完成测试后,你可以删除不再需要的临时容器,以释放资源和清理环境,删除零食容器命令如下:
sudo docker ps -a /* 列出所有容器 */
sudo docker rm -f 容器ID(容器名)
6.web端访问emqx
http://x.x.x.x:18083
用户名:admin
密码:public
当可以访问http://x.x.x.x:18083出现一下页面时代码搭建成功
这样通过浏览器就可以访问18083端口,会打开一个管理控制台网页,默认的用户名是admin,密码为public,登录成功后,主界面如下:
注意:
在 EMQ X 的使用过程中,临时容器可能需要被删除或清理的几种情况包括:
-
升级或更新 EMQ X 版本:当你需要升级或更新 EMQ X 版本时,一种常见的做法是启动一个新的容器,并将旧容器停止和删除。这样可以确保你的 EMQ X 系统运行在最新版本上,并且避免旧版本的遗留问题。
-
测试和调试目的:在开发、测试和调试过程中,你可能需要多次运行 EMQ X 容器来进行不同的实验和配置调整。在完成测试后,你可以删除不再需要的临时容器,以释放资源和清理环境。
-
容器过期或失效:有时,由于某些原因(如网络问题、硬件故障等),运行 EMQ X 的容器可能会过期或失效。在这种情况下,你可以手动停止和删除这些临时容器,并重新启动一个新的容器。
-
系统资源管理:在运行 EMQ X 的服务器上,你可能需要管理系统资源的分配和使用情况。如果发现某个容器占用了过多的资源(如 CPU、内存等),你可以选择停止并删除该容器,以确保整个系统的性能和稳定性。
总之,临时容器需要被删除的时机取决于具体的使用需求和场景。如果你不再需要某个容器,或者需要重建 EMQ X 环境,手动删除临时容器是一个常见的做法。
重要的是要注意备份重要的数据和配置文件,以防止意外删除容器导致的数据丢失。在删除之前,请确保你已经备份了重要的数据或做好相应的数据迁移。
以上是个人搭建过程,希望对各位有帮助。