通过docker安装emqx(mqtt)
创建所需目录
mkdir -p /opt/emqx/etc /opt/emqx/lib /opt/emqx/data /opt/emqx/log
预先拷贝文件
1、安装并运行emqx:latest
docker run -dit --name emqx -p 1883:1883 -p 8081:8081 -p 8083:8083 -p 8883:8883 -p 8084:8084 -p 18083:18083 emqx/emqx:latest
2、拷贝文件
docker cp emqx:/opt/emqx/etc /opt/emqx/
3、关闭并移除emqx
docker stop emqx
docker rm emqx
运行emqx并挂载文件
docker run -d \
--name emqx \
--restart=always \
-p 1883:1883 \
-p 8883:8883 \
-p 8083:8083 \
-p 8084:8084 \
-p 8081:8081 \
-p 18083:18083 \
-v /opt/emqx/:/opt/emqx/etc \
emqx/emqx:latest
默认账密为:admin/public
wss配置
1、在阿里云中下载ssl中其他证书,放到服务器的/opt/emqx/etc/certs/ssl/目录中
2、修改/opt/emqx/etc/emqx.conf
listeners.wss.default {
bind = "0.0.0.0:8084"
max_connections = 512000
websocket.mqtt_path = "/mqtt"
ssl_options {
keyfile = "etc/certs/ssl/域名.key"
certfile = "etc/certs/ssl/域名.pem"
cacertfile = "etc/certs/cacert.pem"
}
}
重启emqx使得配置生效
docker restart emqx