资讯动态

ThingsBoard 从零上手教程:Docker 三步部署,接入设备并盯住实时数据

发布时间:2026/9/6 18:59:04 来源:尧图企业网站定制
ThingsBoard 从零上手教程Docker 三步部署接入设备并盯住实时数据【免费下载链接】thingsboardOpen-source IoT Platform - Device management, data collection, processing and visualization.项目地址: https://gitcode.com/GitHub_Trending/th/thingsboardThingsBoard 是一个开源物联网平台覆盖设备管理、数据收集、处理与可视化。这篇教程帮你完成一条完整链路在本机跑起平台、把第一台 MQTT 设备接进来、在仪表盘上盯住实时遥测并在数据越界时自动收到告警。适合没有物联网平台经验的开发者也适合想给业务快速搭一套监控大屏的工程师。用最小 Docker 命令把平台跑起来ThingsBoard 官方提供了微服务模式的 Docker Compose 编排一条安装脚本即可拉起全套服务两个核心节点、两个规则引擎、多路传输MQTT/HTTP/CoAP/LWM2M/SNMP、JS 脚本执行器、ZooKeeper外加数据库和缓存。拉取代码git clone https://gitcode.com/GitHub_Trending/th/thingsboard cd thingsboard/docker可选调整数据库类型由.env里的DATABASE变量决定postgres或hybrid缓存由CACHE变量决定valkey 单机/哨兵/集群。默认配置即可直接跑不用改。创建日志目录并安装--loadDemo会载入演示数据方便你登录后就有东西可看./docker-create-log-folders.sh ./docker-install-tb.sh --loadDemo浏览器打开http://localhost:8080能出现登录页就说明部署成功了。各服务用的哪个镜像、挂载了哪份配置都可以直接看 docker-compose.yml不想手动敲脚本的话docker/README.md 里列了启停、升级、移除的完整脚本清单docker-start-services.sh、docker-stop-services.sh、docker-upgrade-tb.sh等。把第一台设备用 MQTT 接进来ThingsBoard 支持 MQTT、HTTP、CoAP、LWM2M、SNMP 五种传输协议新手从 MQTT 入手最省心Docker 部署默认把 1883 端口映射到了宿主机。登录平台在「设备」页面新建一个 MQTT 设备复制它生成的访问令牌Access Token。这个令牌就是设备的身份证号。用任意 MQTT 客户端连接localhost:1883把访问令牌当作用户名密码留空。仓库里自带一个可运行的 Python 示例 simple-mqtt-client.py核心逻辑只有几行import paho.mqtt.client as mqtt import json client mqtt.Client() client.username_pw_set(这里换成你的设备访问令牌) client.connect(127.0.0.1, 1883, 60) telemetry {temperature: 25.5, humidity: 60} client.publish(v1/devices/me/telemetry, json.dumps(telemetry)) client.loop_forever()记住一条规则设备数据都发到v1/devices/me/前缀下的固定主题——telemetry遥测、attributes属性、rpc/request/远程调用。发完之后打开设备的「历史数据」页应该能看到刚才那条温湿度。没有 MQTT 客户端HTTP 传输同样能收遥测默认 8081 端口curl -X POST http://localhost:8081/api/v1/YOUR_TOKEN/telemetry \ -H Content-Type: application/json \ -d {temperature:25.5,humidity:60}各协议实际监听哪个端口见对应的 env 文件比如 tb-mqtt-transport.env 里的MQTT_BIND_PORT1883、tb-http-transport.env 里的HTTP_BIND_PORT8081。在大屏上盯住实时遥测数据进来了下一步是把它变成一眼能看的仪表盘。在「仪表盘」页面新建一个空白仪表盘选中你刚接入的设备。从组件库里拖一个「最新数值」类组件到画布绑定temperature、humidity两个键实时数据就会持续刷新。想反过来控制设备可以放一个控制类组件通过 RPC 下发命令效果类似这样仪表盘可以保存成模板再批量复制也可以直接分享给客户租户不用每台设备单独配一遍。数据越界时让平台主动报警只看数据不够还得让平台在异常时替你盯着。ThingsBoard 内置的规则引擎允许你定义什么条件下触发什么动作。打开该设备的默认规则链在遥测消息流入的节点后加一个「过滤」节点条件写成msg.temperature 30。过滤命中后接一个「创建告警」节点设置告警类型和严重级别也可以接「邮件」节点直接把告警发到邮箱。之后温度每超过阈值一次设备详情里就会多一条告警记录仪表盘上的报警组件也会亮出来。节点有哪些类型、每个字段怎么写可以翻 ui-ngx/src/assets/help/ 下的帮助文档每个规则节点都有对应的图文说明。到这里你已经走完了一条完整的链路部署、接入、可视化、告警。ThingsBoard 的开源实现足够完整从单机演示到多节点集群compose 里本来就是双核心 双规则引擎 双传输的架构都能平滑过渡Apache 2.0 许可证见 LICENSE也允许直接用于商业项目。下一步建议深入规则链编排和边缘Edge部署更多细节看项目 README.md 里指向的官方文档遇到问题可以去项目的 issues 页面反馈。【免费下载链接】thingsboardOpen-source IoT Platform - Device management, data collection, processing and visualization.项目地址: https://gitcode.com/GitHub_Trending/th/thingsboard创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

读完文章,也想定制专属网站?

尧图设计师 24 小时内与您沟通定制方案

免费获取报价