2. ThingsBoard 安装与部署:Docker 方式快速安装、本地安装(Windows/Linux)、初始配置与管理员登录
ThingsBoard 支持多种部署方式,本章聚焦于最常用的 Docker 快速部署 与 本地安装(Windows/Linux) 两种路径。无论采用哪种方式,最终目标都是获得一个可访问的 ThingsBoard 实例,并完成初始配置与管理员登录。
2.1 部署方式对比
在选择部署方式前,先了解不同方案的适用场景与资源需求:
| 部署方式 | 适用场景 | 资源要求 | 复杂度 | 推荐指数 |
|---|---|---|---|---|
| Docker 部署 | 开发测试、快速原型、生产环境(需编排) | 低(2 核 4GB 起) | 低 | ⭐⭐⭐⭐⭐ |
| Linux 本地安装 | 生产环境、定制化部署 | 中(4 核 8GB 起) | 中 | ⭐⭐⭐⭐ |
| Windows 本地安装 | 个人学习、单机演示 | 高(需安装 Java 环境) | 高 | ⭐⭐ |
建议: 本课程后续所有操作均基于 Docker 部署的 ThingsBoard 3.6.x 版本。如果你仅用于学习,Docker 是最省心的选择。
2.2 Docker 方式快速安装(推荐)
Docker 部署 ThingsBoard 的核心是使用官方提供的 docker-compose.yml 文件,一键拉起所有服务组件。
2.2.1 前提条件
- 已安装 Docker Engine 20.10+ 与 Docker Compose v2+。
- 主机内存 ≥ 4GB,磁盘 ≥ 20GB。
- 开放端口:
8080(Web UI)、1883(MQTT)、5683(CoAP)。
2.2.2 安装步骤
- 创建目录并下载 compose 文件
mkdir -p ~/thingsboard && cd ~/thingsboard wget https://raw.githubusercontent.com/thingsboard/thingsboard/release-3.6/docker/docker-compose.yml - 启动服务
首次启动会自动拉取docker compose up -dthingsboard/tb-postgres镜像(约 1.2GB),并初始化数据库。 - 验证启动状态
看到docker compose logs -f tb-coreStarted ThingsBoard Server in ... seconds表示启动成功。 - 访问 Web UI
浏览器打开http://localhost:8080,进入登录页面。
关键组件说明: Docker 部署包含
tb-core(主服务)、tb-postgres(数据库)、tb-queue(消息队列)三个容器。生产环境建议替换为 PostgreSQL + Kafka 的高可用方案。
2.3 本地安装(Linux / Windows)
当无法使用 Docker 时,可选择本地安装。以下以 Ubuntu 22.04 为例,Windows 步骤类似但需手动配置 Java 环境变量。
2.3.1 Linux 本地安装步骤
- 安装 Java 11(OpenJDK)
sudo apt update && sudo apt install openjdk-11-jdk -y java -version # 确认版本为 11.x - 下载 ThingsBoard 安装包
wget https://github.com/thingsboard/thingsboard/releases/download/v3.6.0/thingsboard-3.6.0.deb sudo dpkg -i thingsboard-3.6.0.deb - 配置数据库(默认使用 PostgreSQL)
编辑/etc/thingsboard/conf/thingsboard.yml,修改数据库连接信息:# 找到 datasource 部分 datasource: url: jdbc:postgresql://localhost:5432/thingsboard username: tb_user password: tb_password - 初始化数据库并启动
sudo /usr/share/thingsboard/bin/install/install.sh --loadDemo sudo systemctl start thingsboard sudo systemctl enable thingsboard - 验证服务
返回sudo systemctl status thingsboard curl http://localhost:8080/api/noauth/health{"status":"UP"}表示服务正常。
Windows 注意事项: ThingsBoard 官方不提供 Windows 安装包,需通过
thingsboard.exe 或源码编译。建议使用 WSL2(Windows Subsystem for Linux)运行 Linux 版本,或直接使用 Docker Desktop。
2.4 初始配置与管理员登录
部署完成后,需要进行首次登录并修改默认密码,确保系统安全。
2.4.1 默认管理员账户
| 角色 | 用户名 | 默认密码 |
|---|---|---|
| 系统管理员 | sysadmin@thingsboard.org |
sysadmin |
| 租户管理员 | tenant@thingsboard.org |
tenant |
| 客户用户 | customer@thingsboard.org |
customer |
2.4.2 登录与安全配置
- 打开浏览器访问
http://localhost:8080。 - 使用
sysadmin@thingsboard.org/sysadmin登录。 - 系统强制要求修改密码,输入新密码(建议 12 位以上,包含大小写字母与数字)。
- 进入主界面后,依次点击 系统设置 → 安全设置,开启 两步验证(2FA) 以增强安全性。
首次登录建议: 立即修改密码并绑定邮箱,避免因默认密码泄露导致系统被入侵。生产环境还应配置 HTTPS 证书。
2.5 部署架构概览
下图展示了 ThingsBoard 部署后的核心组件与通信关系,帮助你理解各服务模块的职责:
2.6 验证部署成功
完成安装后,执行以下检查清单确认系统正常运行:
- Web UI 可访问: 浏览器打开
http://localhost:8080显示登录页面。 - API 健康检查:
curl http://localhost:8080/api/noauth/health返回UP。 - MQTT 端口监听:
netstat -tulpn | grep 1883显示 LISTEN 状态。 - 数据库连接: 使用
psql -h localhost -U tb_user -d thingsboard可查询设备表。
常见问题: 如果 8080 端口被占用,可在
docker-compose.yml 中修改端口映射,例如 "8081:8080"。本地安装则修改 thingsboard.yml 中的 server.port 配置项。