migoller/http-mqtt-bridge 是一个轻量级的 HTTP 到 MQTT 桥接工具,用于将 HTTP 请求转换为 MQTT 消息并转发至指定的 MQTT Broker。该工具最初设计用于解决 IFTTT(不原生支持 MQTT 服务)与 OpenHab 等智能家居系统的集成问题,通过接收 IFTTT Maker Webhooks 等 HTTP 请求,实现与 MQTT 设备/服务的通信。
镜像通过以下环境变量配置核心参数,必须根据实际需求设置:
| 环境变量 | 说明 | 示例值 |
|---|---|---|
AUTH_KEY | 用于验证 HTTP 请求的密钥(必填,建议使用高强度随机字符串) | 912ec803b2ce49e4a541068d495ab570 |
MQTT_HOST | MQTT Broker 地址(需包含协议、主机和端口,必填) | mqtts://k99.cloudmqtt.com:21234 |
MQTT_USER | MQTT Broker 认证用户名(若 Broker 启用认证则必填) | mqtt_user123 |
MQTT_PASS | MQTT Broker 认证密码(若 Broker 启用认证则必填) | mqtt_pass456 |
默认监听容器内 5000 端口,连接本地 MQTT Broker(实际使用需通过环境变量指定远程 Broker):
bashdocker run -d -p 5000:5000 migoller/http-mqtt-bridge
指定 MQTT Broker 连接参数及认证密钥:
bashdocker run -d \ -p 5000:5000 \ -e AUTH_KEY=912ec803b2ce49e4a541068d495ab570 \ # 替换为自定义密钥 -e MQTT_HOST=mqtts://k99.cloudmqtt.com:21234 \ # 替换为实际 MQTT Broker 地址 -e MQTT_USER=<你的用户名> \ # 替换为 MQTT 用户名 -e MQTT_PASS=<你的密码> \ # 替换为 MQTT 密码 migoller/http-mqtt-bridge
容器启动后,可通过 HTTP POST 请求向 MQTT 主题发布消息,支持两种方式:
发送包含 topic(目标 MQTT 主题)和 message(消息内容)的 JSON 数据:
bashcurl -H "Content-Type: application/json" \ "http://<Docker主机IP>:5000/post" \ -d '{"topic": "MyTopic", "message": "Hello World"}'
响应:成功时返回 OK。
通过 URL 参数 topic 指定目标主题,path 指定消息内容,适用于动态构建 URL 的场景:
http://<Docker主机IP>:5000/post?topic=/MyTopic/TestTopic&path=payload
topic:目标 MQTT 主题(如 /MyTopic/TestTopic)。path:消息内容(如 payload)。为保障传输安全,建议通过反向代理实现 HTTPS 加密。推荐使用以下容器组合:
具体配置请参考上述项目***文档,通过设置 VIRTUAL_HOST、LETSENCRYPT_HOST 等环境变量实现 HTTP 到 HTTPS 的转发。
本项目基于 petkov 的 HTTP to MQTT bridge(Node.js 实现)开发,感谢原作者提供的核心代码。
来自真实用户的反馈,见证轩辕镜像的优质服务
免费版仅支持 Docker Hub 加速,不承诺可用性和速度;专业版支持更多镜像源,保证可用性和稳定速度,提供优先客服响应。
免费版仅支持 docker.io;专业版支持 docker.io、gcr.io、ghcr.io、registry.k8s.io、nvcr.io、quay.io、mcr.microsoft.com、docker.elastic.co 等。
当返回 402 Payment Required 错误时,表示流量已耗尽,需要充值流量包以恢复服务。
通常由 Docker 版本过低导致,需要升级到 20.x 或更高版本以支持 V2 协议。
先检查 Docker 版本,版本过低则升级;版本正常则验证镜像信息是否正确。
使用 docker tag 命令为镜像打上新标签,去掉域名前缀,使镜像名称更简洁。
探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式
通过 Docker 登录认证访问私有仓库
在 Linux 系统配置镜像加速服务
在 Docker Desktop 配置镜像加速
Docker Compose 项目配置加速
Kubernetes 集群配置 Containerd
在宝塔面板一键配置镜像加速
Synology 群晖 NAS 配置加速
飞牛 fnOS 系统配置镜像加速
极空间 NAS 系统配置加速服务
爱快 iKuai 路由系统配置加速
绿联 NAS 系统配置镜像加速
QNAP 威联通 NAS 配置加速
Podman 容器引擎配置加速
HPC 科学计算容器配置加速
ghcr、Quay、nvcr 等镜像仓库
无需登录使用专属域名加速
需要其他帮助?请查看我们的 常见问题 或 官方QQ群: 13763429