EMQ X 与 MQTTX

EMQ X 安装

初始化

docker-compose:

version: '3.1'

volumes:
  vol-emqx-data:
  vol-emqx-etc:
  vol-emqx-log:

services:
  emqx:
    image: emqx/emqx
    restart: always
    container_name: yogile_emqx
    environment:
      EMQX_NAME: yogile_emqx
      EMQX_HOST: 127.0.0.1
    ports:
      - 1883:1883
      - 18083:18083
    volumes:
      - vol-emqx-data:/opt/emqx/data
      - vol-emqx-etc:/opt/emqx/etc
      - vol-emqx-log:/opt/emqx/log

这样可以持久化容器,方便长时间运行。

便于备份

方式一:官方命令工具(推荐)

EMQ X 开源版的文档中,没有说明备份迁移的操作,但在企业版中可以找到: 用户指南 - 数据导入导出

里面包含了 命令行接口HTTP API 两种方式备份,分别对应本地和远程两种方式。

方式一:自定义数据卷 volumes

将找到初始化时默认生成的三个数据卷 vol-emqx-datavol-emqx-etcvol-emqx-log 的路径,直接 cp -r 到目标地址,进行迁移即可。

迁移后 docker-compose:

version: '3.1'

services:
  emqx:
    image: emqx/emqx
    restart: always
    container_name: yogile_emqx
    environment:
      EMQX_NAME: yogile_emqx
      EMQX_HOST: 127.0.0.1
    ports:
      - 1883:1883
      - 18083:18083
    volumes:
      - /home/docker/yogile_emqx/data:/opt/emqx/data
      - /home/docker/yogile_emqx/etc:/opt/emqx/etc
      - /home/docker/yogile_emqx/log:/opt/emqx/log

EMQ X 配置

关闭匿名访问

  1. 登录 18083 端口管理页面,插件 中启用 emqx_auth_mnesia
  2. 打开 etc 目录下的 emqx.conf 文件,查找 allow_anonymous 并将值由 true 修改为 false ,查找 acl_nomatch 并将值由 allow 修改为 deny
  3. 重启容器。

配置合法访问账号

EMQ X 开源版阉割了很多功能,比如 访问控制 > 认证 界面(http://[IP]:18083/#/authentication),但是可以通过其他方式进行配置。

方式一:配置文件

由于明文存储,不太安全。

  1. 打开 etc/plugins 目录下的 emqx_auth_mnesia.conf 文件,参考 Examples: 下的格式添加用户。

    auth.user.<唯一用户名>.username = xxxxx
    auth.user.<唯一用户名>.password = xxxxx
    
  2. 保存文件,重启容器。

方式二:命令行

根据 emqx_ctl 命令:

user list                                                      # List username auth rules
user add <Username> <Password>                                 # Add username auth rule
user update <Username> <NewPassword>                           # Update username auth rule
user delete <Username>                                         # Delete username auth rule

MQTTX 安装

官网下载: MQTTX

posted @ 2022-07-12 22:01  Yogile  阅读(758)  评论(0编辑  收藏  举报