nanomq ====== [NanoMQ][1] MQTT Broker (NanoMQ) is an all-around Edge Messaging Platform that includes a blazing-fast MQTT Broker for the IoT/IIoT and a lightweight Messaging Bus for SDV. ## up and running ```bash $ mkdir -p data/{etc,log,var} $ cd data/etc $ wget https://github.com/nanomq/nanomq/raw/master/etc/nanomq.conf $ vi nanomq.conf $ ssh-keygen -t rsa -b 4096 -m PEM -N '' -f jwtRS256.key $ openssl rsa -in jwtRS256.key -pubout -outform PEM -out jwtRS256.key.pub $ docker compose up -d $ curl -u admin:public http://192.168.42.156:8081/api/v4/brokers ``` ## quick start ```bash $ mosquitto_sub -h 127.0.0.1 -p 1883 -t test -v $ mosquitto_pub -h 127.0.0.1 -p 1883 -t test -m hello ``` ## rule engine By default, the rule engine function is disabled. To enable it, please compile with the [-DENABLE_RULE_ENGINE=ON][2] option. ```bash $ sudo apt install sqlite3 $ echo 'select * from test' | sqlite3 -cmd '.mode box' data/var/test.db ┌─────┬────┬───────┬─────────────────┬──────────┬──────────┬────────────┬─────────┐ │ Qos │ Id │ Topic │ Clientid │ Username │ Password │ Timestamp │ Payload │ ├─────┼────┼───────┼─────────────────┼──────────┼──────────┼────────────┼─────────┤ │ 0 │ 0 │ test │ nanomq-685fba8e │ (null) │ (null) │ 1717486273 │ hello │ └─────┴────┴───────┴─────────────────┴──────────┴──────────┴────────────┴─────────┘ ``` [1]: https://github.com/nanomq/nanomq/tree/master [2]: https://nanomq.io/docs/en/latest/installation/build-options.html