跳到主要内容
版本:2.0.17

Docker

镜像拉取

docker pull fluxmq/enterprise:2.0.17

启动FluxMQ

默认会启动MQTT、MQTT over Websocket、HTTP端口

docker run -it -d  -v /app/logs:/app/logs  -p 8080:8080 -p 1883:1883 -p 8883:8883 fluxmq/enterprise:2.0.17

覆盖FluxMQ默认配置

配置文件目录:/app/config/config.yaml

FluxMQ配置文件,

allowEmptyMessage: true # 是否允许空消息传递规则引擎
allowAnonymousAccess: true # 是否允许匿名访问
pool:
# bossThreadSize: 4 # 默认 4 不建议配置
# workThreadSize: 20 # 默认cpu核心数 不建议配置
# eventThreadSize: 24 # 默认cpu核心数+2 不建议配置
bufferSize: 4096
eventMessageSize: 500000 # 业务线程数 默认=cpu核心数*10
waitStrategy: BLOCKING #
# lowWaterMark: 低水位: 默认32768 不建议配置
# highWaterMark: 高水位: 默认65536 不建议配置
# channelReadSize: 单连接读字节数/s ,默认不限制,不建议配置
# channelWriteSize: 单连接写字节数/s,默认不限制, 不建议配置
mqtt: ## 支持多端口
- port: 1883 # mqtt端口号
wiretap: false # 二进制日志
messageMaxSize: 4194304 # 接收消息的最大限制 默认4194304(4M)
proxy: false # 是否开启proxy协议
enableAuth: true # 是否开启认证
enableAcl: true # 是否开启ACL
enableBridge: true # 是否开启桥接(规则引擎)
maxSendWindowSize: 100 # 单个连接发送确认消息窗口(qos1+qos2)
maxReceiveWindowSize: 100 # 单个连接接收确认窗口(qos2)
maxConnectionPerSecond: 1000 # 连接速率
sessionPersistence: false # 开启session消息持久化,建议使用离线消息
maxSessionSize: 100 # 开启session后 单个连接持久化最大消息数
- port: 8999 # 端口
useWebsocket: true # 是否使用websocket
messageMaxSize: 4194304 # 接收消息的最大限制 默认4194304(4M)
path: /mqtt # ws 的访问path mqtt.js请设置此选项
enableAuth: true # 是否开启认证
enableAcl: true # 是否开启ACL
enableBridge: true # 是否开启桥接(规则引擎)
maxSendWindowSize: 100 # 单个连接发送确认消息窗口(qos1+qos2)
maxReceiveWindowSize: 100 # 单个连接接收确认窗口(qos2)
maxConnectionPerSecond: 1000 # 连接速率
sessionPersistence: false # 开启session消息持久化,建议使用离线消息
maxSessionSize: 100 # 开启session后 单个连接持久化最大消息数
http: # http相关配置 端口固定60000
host: 127.0.0.1
port: 8080
accessLog: false # http访问日志
username: fluxmq # 访问用户名
password: fluxmq # 访问密码
cluster: # 集群配置
localAddress: 127.0.0.1
addresses: ["127.0.0.1"]
meter:
meterType: PROMETHEUS # INFLUXDB , PROMETHEUS
eventbus:
compressed: true
batch: true
batchSize: 2000
batchDuration: 50
shareSubscribe:
strategy: RANDOM
maxShareSubscribeSize: 100
store:
storeType: MEMORY # MYSQL,LOCAL,MEMORY,POSTGRESQL
datasource:
url: jdbc:mysql://127.0.0.1:3306/fluxmq?useSSL=false
username: root
password: root
application:
name: fluxmq

启动FluxMQ

docker run -it -d  -v /app/logs:/app/logs /app/config/config.yaml:/app/config/config.yaml  -p 8080:8080 -p 1883:1883 -p 8883:8883 fluxmq/enterprise:2.0.17

License配置

配置文件目录:/app/license.base64

docker run -it -d  -v /app/license.base64:/app/license.base64  -v /app/logs:/app/logs /app/config/config.yaml:/app/config/config.yaml  -p 8080:8080 -p 1883:1883 -p 8883:8883 fluxmq/enterprise:2.0.17

持久化

如果采用本地数据持久化模式:LOCAl,务必需要将容器目录~/fluxmq目录映射到宿主机

运行日志

运行位置在/logs下包含INFO、ERROR日志,启动容器可以将目录映射宿主机

管理页面

http://宿主机ip:8080/