docker pull emqx/emqx:latest # 也可以拉去指定版本 docker pull emqx/emqx:v4.0.0启动
docker run -d --name emqx --network mynet --network-alias emqx -p 1883:1883 -p 8081:8081 -p 8083:8083 -p 8883:8883 -p 8084:8084 -p 18083:18083 emqx/emqx:latest # 避免跟rabbitmq的1883冲突 docker run -d --name emqx --network mynet --network-alias emqx -p 1884:1883 -p 8081:8081 -p 8083:8083 -p 8883:8883 -p 8084:8084 -p 18083:18083 emqx/emqx:latest
端口说明
1883:MQTT 协议端口
8883:MQTT/SSL 端口
8083:MQTT/WebSocket 端口
8080:HTTP API 端口
18083:Dashboard 管理控制台端口
在服务器上创建emqx挂载目录mkdir -p /usr/local/emqx/{etc,lib,data,log}
将临时EMQX容器的文件拷贝到服务器
docker cp emqx:/opt/emqx/etc /usr/local/emqx docker cp emqx:/opt/emqx/lib /usr/local/emqx docker cp emqx:/opt/emqx/data /usr/local/emqx docker cp emqx:/opt/emqx/log /usr/local/emqx修改挂载目录权限
chown -R 1000:1000 /usr/local/emqx/ chmod -R 755 /usr/local/emqx/6、删除当前临时emqx容器
docker stop emqx docker rm emqx7、重新启动一个EMQX(挂载目录到服务器)
docker run -d --name emqx --network mynet --network-alias emqx -p 1883:1883 -p 8883:8883 -p 8083:8083 -p 8084:8084 -p 8081:8081 -p 18083:18083 -v /usr/local/emqx/etc:/opt/emqx/etc -v /usr/local/emqx/lib:/opt/emqx/lib -v /usr/local/emqx/data:/opt/emqx/data -v /usr/local/emqx/log:/opt/emqx/log emqx/emqx:latest访问emqt的web管理页面
http://127.0.0.1:18083
#账号: admin
#密码: public
admin public为默认用户名密码,也可以提前修改/usr/local/emqx/etc/plugins/emqx_auth_username.conf文件,再启动容器
docker logs emqx docker logs -f emqx配置 进入控制台
docker exec -it emqx /bin/bash
emqx_ctl plugins reload emqx_web_hook
创建API访问用户方法一:非docker安装
方法二:需要先进入控制台
# 创建用户 emqx_ctl mgmt insert jrsoft-iot jrsoft-iot AppSecret: MzA0NzIzMTU5Njg2MzA5NjE0NjI2MDY0MzcyODM1Mjg3MDE不允许匿名登录
默认是允许匿名
修改/etc/emqx/emqx.conf
在docker中则修改/usr/local/emqx/etc/emqx.conf
allow_anonymous = false:使插件生效
cd /usr/lib/emqx emqx_ctl plugins reload emqx_auth_mongo配置系统消息订阅权限
修改/etc/emqx/acl.conf
在docker中则修改/usr/local/emqx/etc/acl.conf
修改/etc/emqx/plugins/emqx_web_hook.conf
在docker中则修改/usr/local/emqx/plugins/emqx_web_hook.conf
web.hook.url = http://192.168.0.8:8080/emqx_web_hook # 或者 web.hook.url = http://192.168.0.55:7004/emqx/hook
使插件生效
emqx_ctl plugins reload emqx_web_hook开hook规则
还是修改emqx_web_hook.conf
使插件生效
emqx_ctl plugins reload emqx_web_hook



