# 快速开始

# 源安装

# Deb 一键安装

curl -s https://assets.emqx.com/scripts/install-nanomq-deb.sh | sudo bash
sudo apt-get install nanomq
1
2

# Deb 手动安装

sudo bash -c 'cat << EOF > /etc/apt/sources.list.d/emqx_nanomq.list
deb [signed-by=/usr/share/keyrings/emqx_nanomq-archive-keyring.gpg] https://packages.emqx.com/emqx/nanomq/any/ any main
deb-src [signed-by=/usr/share/keyrings/emqx_nanomq-archive-keyring.gpg] https://packages.emqx.com/emqx/nanomq/any/ any main
EOF'

gpg_key_url="https://packages.emqx.com/emqx/nanomq/gpgkey"
gpg_keyring_path="/usr/share/keyrings/emqx_nanomq-archive-keyring.gpg"
curl -fsSL "${gpg_key_url}" | gpg --dearmor > ${gpg_keyring_path}
mv ${gpg_keyring_path} /etc/apt/trusted.gpg.d/emqx_nanomq.gpg

sudo apt-get update
sudo apt-get install nanomq
1
2
3
4
5
6
7
8
9
10
11
12

# Rpm 一键安装

curl -s https://assets.emqx.com/scripts/install-nanomq-rpm.sh | sudo bash
sudo yum install -y nanomq
1
2

# Rpm 手动安装

sudo bash -c 'cat << EOF > /etc/yum.repos.d/emqx_nanomq.repo
[emqx_nanomq]
name=emqx_nanomq
baseurl=https://packages.emqx.com/emqx/nanomq/rpm_any/rpm_any/$basearch
repo_gpgcheck=1
gpgcheck=0
enabled=1
gpgkey=https://packages.emqx.com/emqx/nanomq/gpgkey
sslverify=1
sslcacert=/etc/pki/tls/certs/ca-bundle.crt
metadata_expire=300
EOF'

sudo yum -q makecache -y --disablerepo='*' --enablerepo='emqx_nanomq'
sudo yum install -y nanomq
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15

# Docker安装

docker run -d --name nanomq emqx/nanomq:0.10.5
1

指定配置文件启动

docker run -d -p 1883:1883 -v {YOU LOCAL PATH}: /etc \
            --name nanomq  emqx/nanomq:0.10.5
1
2

详细Docker配置方式请参阅Readme文档

# 编译安装

编译 NanoMQ 需要支持 C99 标准的编译环境和高于 3.13 的 CMake (opens new window) 版本。

您可以通过以下步骤来编译和安装 NanoMQ:

$ mkdir build
$ cd build
$ cmake -G Ninja ..
$ sudo ninja install
1
2
3
4

或者你可以不用 ninja 来编译:

$ mkdir build 
$ cd build
$ cmake .. 
$ make
1
2
3
4

可增加 cmake 编译参数 NNG_ENABLE_TLS 来支持 TLS 连接:

需提前安装 mbedTLS (opens new window).

cmake -G Ninja -DNNG_ENABLE_TLS=ON ..
1

或者

cmake -DNNG_ENABLE_TLS=ON ..
1

查看配置文件 nanomq.conf 了解更多TLS相关配置参数.

# 编译依赖

请注意,NanoMQ 依赖于nng

依赖项可以独立编译

$PROJECT_PATH/nanomq/nng/build$ cmake -G Ninja ..
$PROJECT_PATH/nanomq/nng/build$ ninja install
1
2

# 启动 MQTT Broker

nanomq start &
1

目前,NanoMQ完整支持MQTT 3.1.1和部分MQTT 5.0协议。

# 使用MQTT Client

# Publish
nanomq_cli pub --url <url> -t <topic> -m <message> [--help]

# Subscribe
nanomq_cli sub --url <url> -t <topic> [--help]

# Connect*
nanomq_cli conn --url <url> [--help]
1
2
3
4
5
6
7
8