Skip to content

快速上手

安装包

用户可以根据所用的操作系统平台,而选择下载 Windows 或 Linux 及 Docker 环境下的 FreeMQTT 安装包。 以下Windows 的命令示例都是在git bash控制台下,与 Linux 控制台命令行格式风格是一致的。

Windows

  1. 将安装包拷贝到你指定的 Windows 文件夹中
  2. 解压安装压(rar 格式)
  3. 打开git bash控制台窗口, 然后进入 ./freemqttd 路径
bash
$ cd ./freemqttd
  1. 启动FreeMQTT Server
bash
$ ./freemqttctl start
start freemqttd success.
  1. 查看 FreeMQTT Server 运行状态
bash
$ ./freemqttctl status
freemqttd v1.02 RUNNING pid 22168, uptime 0 days, 0:1:7
  1. 重启 FreeMQTT Server
bash
$ ./freemqttctl restart
restart freemqttd success.
  1. 停止 FreeMQTT Server
bash
$ ./freemqttctl stop
stop freemqttd success.

Linux

  1. 将安装包拷贝到你指定的 Linux 文件夹中
  2. 解压安装压(tar.gz 格式)
  3. 进入 bash 控制台, 然后进入 ./freemqttd 路径
bash
$ cd ./freemqttd
  1. 启动FreeMQTT Server
bash
$ ./freemqttctl start
start freemqttd success.
  1. 查看 FreeMQTT Server 运行状态
bash
$ ./freemqttctl status
freemqttd v1.02 RUNNING pid 22168, uptime 0 days, 0:1:7
  1. 重启 FreeMQTT Server
bash
$ ./freemqttctl restart
restart freemqttd success.
  1. 停止 FreeMQTT Server
bash
$ ./freemqttctl stop
stop freemqttd success.

Docker

FreeMQTT 为了方便Docker用户,提供了Docker image的压缩包。用户在下载压缩包后,按如下步骤操作:

  1. 拷贝压缩包到目标Linux主机(当然不只限于用 scp 命令拷贝)
bash
$ scp ./freemqtt-docker-img.tar.gz acc@myhost:~
  1. 登录到目标Linux主机
bash
$ ssh acc@myhost
  1. 解压
bash
$ tar -zxvf freemqtt-docker-img.tar.gz
$ ls -l freemqtt*
-rw-rw-r-- 1 ben ben  43330784 Sep 23 21:56 freemqtt-docker-img.tar.gz
-rw------- 1 ben ben 104934912 Sep 23 19:38 freemqtt-img.tar
  1. 装入镜像
bash
$ docker load -i freemqtt-img.tar
629d9dbab5ed: Loading layer [==================================================>]  80.35MB/80.35MB
8df864d96bf8: Loading layer [==================================================>]  24.57MB/24.57MB
Loaded image: freemqtt-img:latest
  1. 运行
bash
$ docker run -itd -p 1883:1883 -v /etc/localtime:/etc/localtime --name freemqttd freemqtt-img
0cb4528fcfd8810513f2f740a73a1fe5b427f8a66c47b157ad5701850feb5bf4
$ docker logs -f freemqttd
[I 240923 14:03:23 freemqttd:90] freemqttd started
  1. 查看运行Log
bash
$ docker logs -f freemqttd
[I 240923 14:03:23 freemqttd:90] freemqttd started

我们已经看到 freemqttd 已经运行起来。

源码

FreeMQTT是完全开源的,如果用户对MQTT服务器端源码感兴趣,或要根据自己的业务进行客制化FreeMQTT,可以下载源码。

运行环境

  • Python 3.9+

按如下步骤(Linux & Windows 平台相同)进行操作:

  • 从代码仓库克隆FreeMQTT
  • 进入源码根目录
  • 安装依赖的Python包
  • 运行FreeMQTT

实操如下:

bash
$ git clone https://github.com/chenglinning/freemqtt.git
$ cd ./freemqtt
$ python -m pip install -r requirements.txt
...

$ python ./freemqttd.py
[I 240921 16:54:11 freemqttd:91] freemqttd started

后台运行:

bash
$ python ./freemqttctl.py start
starting freemqttd ...
start freemqttd success. 

(.venv) 
DELL@BEN-DELL-15R5537 MINGW64 /e/dev/freemqtt (main)

连接测试

我们已经成功安装FreeMQTT并启动FreeMQTT,现在是该连接测试和体验FreeMQTT的时候了。

  1. 生成MQTT客户端登录的密码(Token)
  • 使用安装包情形下:
bash
$ ./freemqtt_token myapp2

AppID: myapp2
Token: gVRVsBqw3bQSD4CQ4rFOXtfGQMelHJmEaNlYtH7GS/A=
  • 直接源码情形下:
bash
$ python ./freemqtt_token.py myapp2

AppID: myapp2
Token: gVRVsBqw3bQSD4CQ4rFOXtfGQMelHJmEaNlYtH7GS/A=
  1. 使用 mqttx客户端工具 进行测试
  • 输入连接参数

alt 填入连接设置

  • 连接FreeMQTT

alt 填入连接设置

结束

快速上手到此已经结束。感谢您关注FreeMQTT,愿FreeMQTT伴您同行,好运连连。