
mochimqtt/servermochi-mqtt/server 是一个用 Go 语言开发的高性能 MQTT v5 服务器,完全符合 MQTT v5 规范。该服务器设计为轻量级且可嵌入,具备出色的性能和可扩展性,适用于物联网(IoT)、智能家居、实时数据发布订阅等场景,提供可靠的消息传输服务。
启动默认配置的 MQTT 服务器,监听 TCP 端口 1883:
bashdocker run -d -p 1883:1883 --name mochi-mqtt-server mochi-mqtt/server
将本地配置文件挂载到容器中实现自定义配置:
bashdocker run -d \ -p 1883:1883 \ -v /path/to/local/config.yaml:/etc/mochi-mqtt/config.yaml \ --name mochi-mqtt-server \ mochi-mqtt/server
创建 docker-compose.yml 文件:
yamlversion: '3' services: mochi-mqtt: image: mochi-mqtt/server ports: - "1883:1883" # TCP 端口 - "8883:8883" # TLS 端口(若启用) - "8080:8080" # WebSocket 端口(若启用) volumes: - ./config.yaml:/etc/mochi-mqtt/config.yaml - ./certs:/etc/mochi-mqtt/certs # TLS 证书目录(若启用) - ./data:/var/lib/mochi-mqtt # 持久化数据目录 environment: - LOG_LEVEL=info - MAX_CONNECTIONS=*** restart: unless-stopped
启动服务:
bashdocker-compose up -d
| 环境变量 | 描述 | 默认值 |
|---|---|---|
MQTT_LISTEN_ADDR | 监听地址 | 0.0.0.0 |
MQTT_TCP_PORT | TCP 服务端口 | 1883 |
MQTT_WS_PORT | WebSocket 服务端口 | 不启用 |
MQTT_TLS_PORT | TLS 服务端口 | 不启用 |
LOG_LEVEL | 日志级别(debug/info/warn/error) | info |
MAX_CONNECTIONS | 最大并发连接数 | 无限制 |
完整 config.yaml 配置示例:
yamllisteners: tcp: addr: ":1883" enabled: true read_buffer_size: 4096 write_buffer_size: 4096 websocket: addr: ":8080" path: "/mqtt" enabled: true tls: addr: ":8883" cert_file: "/etc/mochi-mqtt/certs/server.crt" key_file: "/etc/mochi-mqtt/certs/server.key" enabled: true persistence: type: "file" dir: "/var/lib/mochi-mqtt" clean_interval: "30s" auth: allow_anonymous: false password_file: "/etc/mochi-mqtt/passwd" # 格式:username:hashed_password plugins: - name: "metrics" path: "/etc/mochi-mqtt/plugins/metrics.so"
ulimit -n)





manifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务