我是靠谱客的博主 辛勤小海豚,这篇文章主要介绍docker安装emqx一、拉取镜像二、启动三、在服务器上创建emqx挂载目录四、将临时EMQX容器的文件拷贝到服务器五、修改挂载目录权限六、删除当前临时emqx容器七、重新启动一个EMQX(挂载目录到服务器)八、访问emqt的web管理页面九、查看日志十、配置,现在分享给大家,希望可以做个参考。

一、拉取镜像

复制代码
1
2
3
4
docker pull emqx/emqx:latest # 也可以拉去指定版本 docker pull emqx/emqx:v4.0.0

二、启动

复制代码
1
2
3
4
5
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挂载目录

复制代码
1
2
mkdir -p /usr/local/emqx/{etc,lib,data,log}

四、将临时EMQX容器的文件拷贝到服务器

复制代码
1
2
3
4
5
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

五、修改挂载目录权限

复制代码
1
2
3
chown -R 1000:1000 /usr/local/emqx/ chmod -R 755 /usr/local/emqx/

六、删除当前临时emqx容器

复制代码
1
2
3
docker stop emqx docker rm emqx

七、重新启动一个EMQX(挂载目录到服务器)

复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
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文件,再启动容器

在这里插入图片描述

九、查看日志

复制代码
1
2
3
docker logs emqx docker logs -f emqx

十、配置

1、进入控制台

复制代码
1
2
docker exec -it emqx /bin/bash

emqx_ctl plugins reload emqx_web_hook

2、创建API访问用户

方法一:非docker安装
<emqx安装目录> /emqx/bin/emqx_ctl mgmt insert iothub magueIotHub
方法二:需要先进入控制台

复制代码
1
2
3
4
5
# 创建用户 emqx_ctl mgmt insert jrsoft-iot jrsoft-iot AppSecret: MzA0NzIzMTU5Njg2MzA5NjE0NjI2MDY0MzcyODM1Mjg3MDE
  • 如果提示用户已经存在可以在如下页面,删除该用户
    在这里插入图片描述

3、不允许匿名登录

默认是允许匿名
修改/etc/emqx/emqx.conf
在docker中则修改/usr/local/emqx/etc/emqx.conf

复制代码
1
2
allow_anonymous = false:

4、使插件生效

复制代码
1
2
3
cd /usr/lib/emqx emqx_ctl plugins reload emqx_auth_mongo

5、配置系统消息订阅权限

修改/etc/emqx/acl.conf
在docker中则修改/usr/local/emqx/etc/acl.conf
在这里插入图片描述

6、开启webhook

修改/etc/emqx/plugins/emqx_web_hook.conf
在docker中则修改/usr/local/emqx/plugins/emqx_web_hook.conf

复制代码
1
2
3
4
web.hook.url = http://192.168.0.8:8080/emqx_web_hook # 或者 web.hook.url = http://192.168.0.55:7004/emqx/hook

使插件生效

复制代码
1
2
emqx_ctl plugins reload emqx_web_hook

在这里插入图片描述

7、开hook规则

还是修改emqx_web_hook.conf
在这里插入图片描述
使插件生效

复制代码
1
2
emqx_ctl plugins reload emqx_web_hook

最后

以上就是辛勤小海豚最近收集整理的关于docker安装emqx一、拉取镜像二、启动三、在服务器上创建emqx挂载目录四、将临时EMQX容器的文件拷贝到服务器五、修改挂载目录权限六、删除当前临时emqx容器七、重新启动一个EMQX(挂载目录到服务器)八、访问emqt的web管理页面九、查看日志十、配置的全部内容,更多相关docker安装emqx一、拉取镜像二、启动三、在服务器上创建emqx挂载目录四、将临时EMQX容器内容请搜索靠谱客的其他文章。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(82)

评论列表共有 0 条评论

立即
投稿
返回
顶部