安装对接设备
简介
本章节旨在提供最简单、最快速的方式帮助您部署 ThingsPanel,无论您使用的是 Windows、macOS 还是任何 Linux 版本。
部署方法概览
ThingsPanel 提供了两种简单快速的部署方法(部署用时大约需要10分钟),以满足不同用户的需求:
- Docker Compose 部署(推荐):适用于所有操作系统,提供最一致、最简单的部署体验
- Windows 独立安装包:为 Windows 用户提供的一键式安装体验
方法 1: 使用 Docker Compose 进行部署(推荐)
Docker Compose 是部署 ThingsPanel 最快速、最便捷的方式,能够确保在各种操作系统上拥有一致的运行环境。
先决条件
在开始部署之前,请确保您的系统已安装以下软件:
- Docker: https://docs.docker.com/engine/installation/
- Docker Compose: https://docs.docker.com/compose/install/
提示:Windows 用户如遇到 Docker Desktop 下载困难,可通过我们的技术支持渠道获取安装包。请参考文档末尾的"技术支持"章节获取官方 QQ 技术支持群号,加入后可在群文件中下载所需安装程序。
部署步骤
第一步:创建部署目录
mkdir thingspanel
cd thingspanel
第二步:创建 docker-compose.yml 文件
创建一个名为 docker-compose.yml 的文件,并将以下内容粘贴到文件中:
version: "3.9"
services:
frontend:
image: registry.cn-hangzhou.aliyuncs.com/thingspanel/thingspanel-vue:v1.1.8
ports:
- "8080:8080"
environment:
- "TZ=Asia/Shanghai"
- "BACKEND_HOST=http://backend:9999"
depends_on:
backend:
condition: service_started
volumes:
- nginx:/etc/nginx
restart: unless-stopped
networks:
- thingspanel_network
postgres:
image: registry.cn-hangzhou.aliyuncs.com/thingspanel/timescaledb:14
volumes:
- postgres_data:/var/lib/postgresql/data
ports:
- "5555:5432"
environment:
- "TZ=Asia/Shanghai"
- "LC_ALL=C.UTF-8"
- "POSTGRES_DB=ThingsPanel"
- "POSTGRES_USER=postgres"
- "POSTGRES_PASSWORD=postgresThingsPanel"
- "POSTGRES_HOST_AUTH_METHOD=md5"
healthcheck:
test: ["CMD-SHELL", "pg_isready -U postgres -d ThingsPanel"]
interval: 10s
timeout: 5s
retries: 5
start_period: 40s
restart: unless-stopped
networks:
- thingspanel_network
gmqtt:
image: registry.cn-hangzhou.aliyuncs.com/thingspanel/thingspanel-gmqtt:v1.1.2
volumes:
- gmqtt:/gmqttd
ports:
- "1883:1883"
environment:
- "TZ=Asia/Shanghai"
- "GMQTT_DB_REDIS_CONN=redis:6379"
- "GMQTT_DB_REDIS_PASSWORD=redis"
- "GMQTT_DB_PSQL_PSQLADDR=postgres"
- "GMQTT_DB_PSQL_PSQLPORT=5432"
- "GMQTT_DB_PSQL_PSQLDB=ThingsPanel"
- "GMQTT_DB_PSQL_PSQLUSER=postgres"
- "GMQTT_DB_PSQL_PSQLPASS=postgresThingsPanel"
hostname: gmqtt
depends_on:
postgres:
condition: service_healthy
redis:
condition: service_healthy
restart: unless-stopped
networks:
- thingspanel_network
redis:
image: registry.cn-hangzhou.aliyuncs.com/thingspanel/redis:6.2.7
command: redis-server --requirepass redis
volumes:
- redis_data:/data
ports:
- "6379:6379"
environment:
- "TZ=Asia/Shanghai"
healthcheck:
test: ["CMD", "redis-cli", "ping"]
interval: 10s
timeout: 5s
retries: 5
restart: unless-stopped
networks:
- thingspanel_network
backend:
image: registry.cn-hangzhou.aliyuncs.com/thingspanel/thingspanel-go:v1.1.8
ports:
- "9999:9999"
environment:
- "TZ=Asia/Shanghai"
- "GOTP_DB_PSQL_HOST=postgres"
- "GOTP_DB_PSQL_PORT=5432"
- "GOTP_DB_PSQL_USERNAME=postgres"
- "GOTP_DB_PSQL_PASSWORD=postgresThingsPanel"
- "GOTP_DB_PSQL_DBNAME=ThingsPanel"
- "GOTP_DB_PSQL_LOG_LEVEL=3"
- "GOTP_DB_REDIS_ADDR=redis:6379"
- "GOTP_DB_REDIS_PASSWORD=redis"
- "GOTP_MQTT_SERVER={MQTT_HOST}"
- "GOTP_MQTT_ACCESS_ADDRESS=127.0.0.1:1883"
- "GOTP_MQTT_BROKER=gmqtt:1883"
- "GOTP_LOG_LEVEL=error"
depends_on:
postgres:
condition: service_healthy
redis:
condition: service_healthy
gmqtt:
condition: service_started
volumes:
- go_files:/go/src/app/files
- go_configs:/go/src/app/configs
restart: unless-stopped
networks:
- thingspanel_network
modbus_service:
image: registry.cn-hangzhou.aliyuncs.com/thingspanel/modbus-protocol-plugin:v1.0.1
ports:
- "502:502"
- "503:503"
environment:
- "MODBUS_THINGSPANEL_ADDRESS=http://backend:9999"
- "MODBUS_MQTT_BROKER=gmqtt:1883"
- "MODBUS_MQTT_QOS=0"
networks:
thingspanel_network:
ipv4_address: 172.20.0.10 # 指定固定IP地址
depends_on:
- backend
- gmqtt
restart: unless-stopped
volumes:
go_files:
go_configs:
gmqtt:
nginx:
postgres_data:
redis_data:
networks:
thingspanel_network:
driver: bridge
ipam:
driver: default
config:
- subnet: 172.20.0.0/16 # 定义网络的子网范围
gateway: 172.20.0.1 # 定义网关地址
提示:Docker 部署时,请注意 backend 容器中的 GOTP_MQTT_ACCESS_ADDRESS 环境变量默认值为 127.0.0.1:1883。如果您在 Linux 服务器上部署,需要将此 IP 地址改为您的服务器ip地址或域名,否则设备详情页面中的"模拟上报数据"功能将无法正常工作(也可在发送时候手动修改发送框里的IP地址)。
第三步:启动 ThingsPanel 服务
在终端或命令提示符中运行以下命令启动所有服务:
docker compose -f docker-compose.yml up -d
提示: -d 参数表示在后台运行所有服务,如需查看日志请去掉 -d 参数。
第四步:验证服务状态
检查所有服务是否正常运行:
docker compose ps
如果需要查看特定服务的日志,可以使用:
docker compose logs thingspanel-backend
第五步:访问 ThingsPanel 平台
打开浏览器,访问:
http://您的服务器IP:8080
Docker桌面版部署访问http://127.0.0.1:8080
默认登录凭据:
- 系统管理员: super@super.cn / 123456
- 租户管理员: tenant@tenant.cn / 123456
安全警告: 请务必在首次登录后更改默认密码,以提高系统安全性。
配置技巧
为了更好地管理您的配置,您可以创建一个 .env 文件来存储环境变量:
# 创建 .env 文件
touch .env
.env 文件示例:
# 数据库配置
DB_HOST=localhost
DB_PORT=5432
DB_USER=postgres
DB_PASSWORD=your_secure_password
DB_NAME=thingspanel
# 其他配置
TP_ADMIN_EMAIL=admin@yourdomain.com
然后在 docker-compose.yml 中引用这些变量:
environment:
TP_DB_HOST: ${DB_HOST}
TP_DB_PORT: ${DB_PORT}
# 其他环境变量...
管理 Docker Compose 部署
常用命令:
# 停止所有服务
docker compose stop
# 停止并移除所有容器、网络
docker compose down
# 重新启动所有服务
docker compose restart
视频示例
如何快速部署ThingsPanel物联网平台-Docker桌面版
方法 2: Windows 独立安装包
ThingsPanel 为 Windows 用户提供了一键式安装包,简化了部署过程。
获取安装包
请加入 QQ 群 371794256,在群文件中下载最新的 .exe 可执行安装版本。
安装步骤
- 下载安装包后,双击运行安装程序
- 按照安装向导的提示完成安 装
- 安装完成后,系统将自动打开浏览器并导航到 ThingsPanel 登录页面
设备接入指南
成功部署 ThingsPanel 后,您可以按照以下步骤快速接入设备并查看数据:
第一步:添加设备
- 登录 ThingsPanel 平台
- 导航至「设备管理」页面
- 点击「添加设备」,填写设备信息
- 可选择是否需要绑定设备模板
第二步:获取设备连接信息
添加设备后,系统会生成设备的连接参数,包括:
- MQTT 服务器地址和端口
- 设备标识(ClientID)
- 主题(Topic)
- 用户名和密码(如适用)
第三步:推送数据
使用 MQTT 客户端工具或您的设备,按照系统提供的参数推送数据。
推荐的 MQTT 客户端工具:
第四步:查看数据
在 ThingsPanel 平台中,您可以通过以下方式查看设备数据:
- 设备详情页面中的实时数据和历史数据视图
- 自定义看板中的可视化图表
- 数据分析工具中的数据趋势分析
15秒接入接入一个设备并查看数据
故障排除
如果您在部署或使用过程中遇到问题,请尝试以下步骤:
- 检查服务状态:使用
docker compose ps
命令检查所有服务是否正常运行 - 查看日志:使用
docker compose logs <服务名>
查看特定服务的日志 - 网络检查:确保防火墙未阻止必要的端口(8080, 1883)
- 资源检查:确保系统有足够的 CPU、内存和磁盘空间
支持
- 社区支持:QQ群 371794256
最佳实践
- 定期备份数据:特别是生产环境中的数据库和配置
- 安全加固: 更改默认密码
- 监控系统资源:对 CPU、内存、磁盘使用进行监控
- 保持更新:定期更新到最新版本以获取新功能和安全修复