ThingsBoard 快速上手指南:3 步 Docker 部署,1 台设备跑通温湿度监控闭环 ThingsBoard 快速上手指南3 步 Docker 部署1 台设备跑通温湿度监控闭环【免费下载链接】thingsboardOpen-source IoT Platform - Device management, data collection, processing and visualization.项目地址: https://gitcode.com/GitHub_Trending/th/thingsboard设备数据散落在串口、Excel 和微信群里告警全靠人肉盯屏——这是多数物联网项目的真实开局。ThingsBoard 是一个开源物联网平台负责设备管理、数据收集、处理与可视化帮你把这些活统一收口。读完本文你能在 30 分钟内用 Docker 一键部署它接入第一台设备搭出温湿度监控的最小闭环。它替我省掉了什么这里帮你解决一个判断问题这个项目到底值不值得接进来看三个真实痛点就够了。痛点 1每个设备协议都要自己写一套搬运工。你大概率写过这样的代码监听串口或 socket解析十六进制报文写进数据库。ThingsBoard 把这条搬运链做成了内置能力设备按协议连上来平台负责解析、鉴权、入库你只管定数据格式。痛点 2仪表盘前端是一笔重复开销。每个项目都要画曲线图、做刷新、处理断线重连。平台自带的 widget 库把这些封装好了拖一个最新值组件、绑定设备数据键曲线就有了。痛点 3告警逻辑散落各处。超过阈值发邮件、短信、webhook往往是一段段 if-else 加定时器。平台用可视化的规则链把收到数据→判断→报警→通知串成一条流程改阈值不需要发版。到这里你应该心里有数了它不是多一个组件而是把接入—存储—展示—告警整条链路打包。链路再漂亮也得先跑起来下一步把它部署到你的机器上。把它跑起来前置只需装好 Docker一台可用机器内存建议 4GB 以上安装 Docker 与 Docker Compose用docker version能正常输出即可。3 步一键部署# 1. 克隆仓库 git clone https://gitcode.com/GitHub_Trending/th/thingsboard # 2. 进入 docker 部署目录 cd thingsboard/docker # 3. 后台启动整套服务核心节点、规则引擎、MQTT/HTTP 传输、Web UI docker-compose up -d跑完你应看到命令陆续拉取镜像并打印Started日志首次执行要拉很多镜像等 5~10 分钟属正常现象。怎么判断部署成功了打开浏览器访问http://localhost:8080看到 ThingsBoard 登录页就算起来了。用默认租户管理员账号登录用户名tenantadminthingsboard.org密码tenant进入主界面后你应能看到设备、仪表盘、规则链等侧边栏菜单。现在平台是空的——没有设备、没有数据。空平台不产生价值下一节我们让第一台设备上线并推送数据。接入你的第一台设备 5 种协议、5 个端口一览docker-compose.yml里已经把常用传输通道全部启好你按设备能力挑一个即可协议端口传输层典型适用设备MQTT1883 (TCP)长连接推荐默认传感器网关、嵌入式 LinuxHTTP8081 (TCP)短请求已有 HTTP 上报逻辑的设备CoAP5683 (UDP)轻量无连接资源受限的 MCULWM2M5685 / 5686 (UDP)设备管理协议智能电表等SNMP1620 (UDP)Trap 上报机房网络设备拿到 Access Token 只需 2 次点击登录后左侧菜单「设备」→「添加新设备」→ 命名保存。设备详情页里会显示一个 Access Token复制下来——它就是这台设备的身份证号。最小可运行示例Python 发一条遥测import paho_mqtt_client as mqtt # pip install paho-mqtt import json ACCESS_TOKEN 粘贴你的设备 Access Token client mqtt.Client() client.username_pw_set(ACCESS_TOKEN) # 用户名填 Token无需密码 client.connect(localhost, 1883, 60) # 连接平台 MQTT 端口 client.loop_start() telemetry {temperature: 25.5, humidity: 60.2} client.publish(v1/devices/me/telemetry, json.dumps(telemetry)) print(已发送:, telemetry)跑完你应看到终端打印已发送回到 Web 界面打开这台设备在「遥测」标签里能看到 temperature 和 humidity 两个键的数值——数据已经从设备流进平台了。数据进来了但目前只是数据库里的两个数字下一节让它变成看得见的曲线。让数据被看见 仪表盘怎么搭左侧菜单「仪表盘」→「创建新仪表盘」命名为大棚环境监控点击画布空白处 →「创建新 widget」选「最新值」或「时序」类组件在数据绑定里选刚才那台设备键分别填temperature、humidity。绑定的关键只有一个widget 里的键名必须和遥测 JSON 里的键完全一致区分大小写。跑完你应看到画布上出现两个 widget每隔几秒自动刷新出最新温湿度。哪些业务场景直接适配同一套设备 widget结构换个键名和阈值就能复用仓库冷储把键换成fridge_temp车队跟踪绑定 GPS 坐标能源监控换成功率与功率键。你不需要换平台只需要换配置。到这里你应该已经能在网页上看到一条实时跳动的温湿度曲线。但曲线只回答现在是多少不回答超了怎么办——这正是规则引擎的活儿。让数据自动流转把规则链想成一条分拣流水线每个设备的数据进入平台后会流经它的规则链。规则链就像快递分拣线包裹消息到站按规则分拣到不同目的地——入库的入库、报警的报警、外发的外发。一条完整链路接收 → 落库 → 过滤 → 告警 → 通知以温度超过 35℃ 就发邮件为例打开设备的默认规则链依次加四个节点并用连线串起来落库默认的保存时间序列节点把每条遥测存进数据库平台默认已含不用手加过滤加一个关系类型/脚本类判断节点条件写msg.temperature 35告警条件命中后连到创建/清除告警节点告警名设为温度过高通知再连一个邮件通知节点填收件邮箱。验证方法把脚本里的温度改成 36 再发一条几秒内设备的告警列表里出现温度过高邮箱收到通知。跑完你应看到告警中心有新告警记录且通知邮件与告警一一对应——整条链路从数据进到人知道全部自动化。演示环境到这里就闭环了。真要上生产只需动三处配置下一节一次讲清。上生产前要动这三处① 日志知道东西去哪了核心服务的日志配置在docker/tb-node/conf/logback.xml各传输服务同理如docker/tb-transports/mqtt/conf。compose 已把日志挂载到宿主机的./tb-node/log等目录容器内路径为/var/log/thingsboard日常排障先用docker logs tb-core1历史追溯再看文件。② 参数两个 env 文件决定行为docker/tb-node.env控制核心节点ZooKeeper 开关、JS 脚本执行方式、监控开关docker/tb-mqtt-transport.env控制传输端口与超时。机器内存吃紧时可在 compose 里通过JAVA_OPTS给每个 Java 容器加堆内存上限避免容器 OOM 被杀。③ 持久化数据在数据库备份要跟上遥测、告警、设备全部存在数据库里compose 目录同时提供了 PostgreSQL 与 Cassandra 两套编排文件docker-compose.postgres.yml等按团队熟悉度选择。上生产前定两件事数据库定期备份策略以及conf配置目录纳入版本管理或快照。到这里你应该知道生产前最少要碰哪些文件。配置再稳新人第一次跑也难免翻车——最后一节把高频故障提前排掉。踩坑与自救 ⚠️新手翻车的五个高频现场按现象 → 去哪看 → 怎么修给你排好启动就报端口被占80/8080/1883。先docker ps确认是不是旧容器没停再检查宿主机是否有其他服务占用改 compose 里的端口映射后docker-compose up -d重建。登录页打不开或返回 502。多半是核心服务还没初始化完。docker logs tb-core1 --tail 100看启动进度等 1~2 分钟再刷新若日志里是数据库连接报错检查数据库容器是否健康。MQTT 连接被拒。九成是 Access Token 没填或填错——username 必须完整粘贴 Token不能截断。仍失败就看docker/tb-transports/mqtt/log下传输服务日志里面会写明鉴权失败的具体原因。设备页有数据仪表盘却是空的。两个高频原因widget 绑定的设备与发数据的设备不在同一个租户下或键名大小写不一致。先在设备详情页「最新遥测」里确认键名再回 widget 逐个核对。容器反复重启、机器内存飙高。默认 compose 是多节点集群小机器扛不住。用docker stats找出吃内存的容器给对应服务调小堆内存或按文档裁剪节点副本数。到这里你应该有了自查手册多数玄学问题都能在三条命令内定位。最后把接下来往哪走、去哪查资料给你说清楚。收尾路线、资源与许可证接下来往哪学按收益排序规则引擎进阶多规则链拆分、RPC 下发指令给设备资产与设备关系建模把大棚建成资产关联其下所有传感器边缘节点与高可用部署把计算下沉到机房侧第三方集成把告警转发到 Kafka、RabbitMQ 等消息系统。去哪查资料都在仓库内无需外网跳转部署脚本与说明docker/README.md、docker/tb-node.env等 env 文件即最权威的参数清单内置帮助文档ui-ngx/src/assets/help目录下按模块分目录Web 界面里也能直接看到设备端联调脚本tools/src/main/python下的 MQTT/CoAP 客户端示例可直接改造使用。许可证本项目基于 Apache License 2.0 发布商用友好详见仓库根目录的LICENSE文件。从部署到设备上线再到曲线与告警全自动一个大棚的温湿度闭环已经完整跑通。剩下的事就是把它接到你的真实设备上。【免费下载链接】thingsboardOpen-source IoT Platform - Device management, data collection, processing and visualization.项目地址: https://gitcode.com/GitHub_Trending/th/thingsboard创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考