快速开始
本指南将帮助您快速部署和使用 ThingsGatewayRuntime 平台。
准备工作
系统要求
操作系统
| 系统 | 支持版本 |
|---|---|
| Windows | Windows 10/11、Windows Server 2016+ |
| Linux | Ubuntu 18.04+、CentOS 7+、Debian 10+ |
Studio 开发环境
| 项目 | 要求 |
|---|---|
| 运行时环境 | .NET 10.0 SDK(必需,用于编译项目) |
| CPU | x64架构,建议 2核心及以上 |
| 内存 | 建议 2GB 及以上 |
| 存储 | 建议 4GB 及以上可用空间 |
| 网络端口 | 5100(Studio Web界面) |
GatewayRuntime 运行时
| 项目 | 要求 |
|---|---|
| 运行时环境 | 方式一:.NET 10.0 Runtime + DLL部署 方式二:AOT独立部署(无需安装.NET Runtime) |
| CPU | x64架构,1核心即可运行 |
| 内存 | 最低 256MB,建议 512MB 及以上 |
| 存储 | 建议 2GB 及以上可用空间 |
| 网络端口 | 6100(网关Web界面) |
提示
- 看门狗(Watchdog) 是后台服务,没有Web界面,仅提供进程管理功能
- 网关Web界面 在端口 6100 提供,由 GatewayRuntime 提供
- Studio Web界面 在端口 5100 提供,用于项目开发和编译
安装 .NET
推荐方式
使用 Bootstrapper 工具可以自动检测当前系统平台并下载对应的 .NET 安装包,无需手动选择。
运行 Bootstrapper.exe 后,选择"下载 .NET 运行时"功能即可自动完成下载和安装。
离线下载脚本
如果需要提前下载 .NET 安装包,可以使用 download-packages.ps1 脚本:
# 下载所有平台
.\download-packages.ps1 -OutputPath "./offline-packages"
# 仅下载当前平台(自动检测)
.\download-packages.ps1 -CurrentPlatformOnly
# 指定平台下载
.\download-packages.ps1 -Platform "windows-x64"
.\download-packages.ps1 -Platform "linux-arm64"
软件部署
软件目录说明
build/
├── WatchDog/ # 看门狗程序目录
│ ├── ThingsGatewayRuntime.Watchdog.exe # 看门狗主程序(AOT编译)
│ ├── GatewayApp/ # 网关运行时程序目录
│ │ ├── ThingsGatewayRuntime.exe # 网关运行时主程序
│ │ ├── Configuration/ # 配置文件目录
│ │ │ ├── WebApiOptions.json # Web API 配置
│ │ │ ├── JwtOptions.json # JWT 认证配置
│ │ │ └── ... # 其他配置文件
│ │ ├── DB/ # 数据库文件目录
│ │ │ └── ThingsGateway.db # SQLite 数据库
│ │ ├── Script/ # 脚本文件目录
│ │ ├── CustomNodes/ # 自定义节点目录
│ │ ├── ScriptDlls/ # 编译后的脚本DLL
│ │ ├── CustomNodeDlls/ # 编译后的自定义节点DLL
│ │ ├── OtherDB/ # 其他数据库目录
│ │ ├── appsettings.json # 应用配置文件
│ │ └── ... # 其他运行时文件
│ └── Projects/ # 项目文件目录
├── Studio/ # Studio开发环境目录
│ ├── ThingsGatewayStudio.exe # Studio主程序
│ ├── NuGet.Config # NuGet配置
│ └── ... # 其他开发环境文件
目录说明
| 目录 | 用途 | 启动程序 | 端口 | 功能 |
|---|---|---|---|---|
| WatchDog/ | 看门狗服务目录 | ThingsGatewayRuntime.Watchdog.exe | 6200(API) | 进程管理、健康检查、自动重启、项目管理 |
| Studio/ | 开发环境目录 | ThingsGatewayStudio.exe | 5100(Web) | 项目管理、脚本编译、看门狗连接、工程上传 |
部署步骤
Windows 系统部署
步骤 1:准备部署包
- 将 build/WatchDog 整个目录拷贝到目标设备
- 推荐路径:
C:\ThingsGateway\或D:\ThingsGateway\ - 确保目录结构完整,不要遗漏文件
步骤 2:检查运行时
- 打开命令提示符
- 执行:
dotnet --list-runtimes - 确认显示 .NET 10.0 Runtime
步骤 3:配置防火墙
- 打开"Windows Defender 防火墙"
- 点击"高级设置"
- 创建入站规则,放行以下端口:
- 6100(网关运行时Web界面)
- 6200(看门狗API)
- 其他采集端口(根据实际需要)
- 或暂时关闭防火墙进行测试(不推荐生产环境)
步骤 4:启动服务
- 进入 WatchDog 目录
- 双击运行
ThingsGatewayRuntime.Watchdog.exe - 等待服务启动完成
步骤 5:验证部署
- 打开浏览器,访问 http://localhost:6100
- 使用默认账号登录:
admin/111111 - 检查网关运行时状态
Linux 系统部署
步骤 1:准备部署包
- 将 build/WatchDog 整个目录上传到目标设备
- 推荐路径:
/opt/ThingsGateway/或/home/user/ThingsGateway/ - 使用 scp、sftp 或其他文件传输工具
步骤 2:设置执行权限
cd /opt/ThingsGateway/WatchDog
chmod +x ThingsGatewayRuntime.Watchdog
步骤 3:配置防火墙
# 使用 firewalld(CentOS/RHEL)
firewall-cmd --permanent --add-port=6100/tcp
firewall-cmd --permanent --add-port=6200/tcp
firewall-cmd --reload
# 或使用 ufw(Ubuntu/Debian)
ufw allow 6100/tcp
ufw allow 6200/tcp
ufw reload
步骤 4:启动服务
cd /opt/ThingsGateway/WatchDog
./ThingsGatewayRuntime.Watchdog
步骤 5:验证部署
curl http://localhost:6100
# 或在浏览器中访问 http://<服务器IP>:6100
配置为系统服务(Linux)
创建 systemd 服务文件:
sudo nano /etc/systemd/system/thingsgateway.service
Watchdog 服务文件内容:
[Unit]
Description=ThingsGateway Runtime Watchdog Service
After=network.target
[Service]
Type=simple
User=root
WorkingDirectory=/opt/ThingsGateway/WatchDog
ExecStart=/opt/ThingsGateway/WatchDog/ThingsGatewayRuntime.Watchdog
Restart=always
RestartSec=10
[Install]
WantedBy=multi-user.target
启用和启动服务:
# 重新加载 systemd 配置
sudo systemctl daemon-reload
# 启用开机自启
sudo systemctl enable thingsgateway
# 启动服务
sudo systemctl start thingsgateway
# 查看服务状态
sudo systemctl status thingsgateway
# 查看服务日志
sudo journalctl -u thingsgateway -f
配置为系统服务(Windows)
方式一:使用 sc 命令(推荐)
以管理员身份运行 PowerShell:
# 创建 Watchdog 服务
sc.exe create "ThingsGateway Watchdog" binPath= "D:\ThingsGateway\WatchDog\ThingsGatewayRuntime.Watchdog.exe" start= auto DisplayName= "ThingsGateway Watchdog Service"
# 创建 Studio 服务
sc.exe create "ThingsGateway Studio" binPath= "D:\ThingsGateway\Studio\ThingsGatewayStudio.exe" start= auto DisplayName= "ThingsGateway Studio Service"
# 启动服务
sc.exe start "ThingsGateway Watchdog"
sc.exe start "ThingsGateway Studio"
# 查看服务状态
sc.exe query "ThingsGateway Watchdog"
sc.exe query "ThingsGateway Studio"
服务管理命令:
# 停止服务
sc.exe stop "ThingsGateway Watchdog"
sc.exe stop "ThingsGateway Studio"
# 删除服务
sc.exe delete "ThingsGateway Watchdog"
sc.exe delete "ThingsGateway Studio"
Studio 服务配置(Linux)
如需将 Studio 配置为 Linux 系统服务:
sudo nano /etc/systemd/system/thingsgateway-studio.service
Studio 服务文件内容:
[Unit]
Description=ThingsGateway Studio Service
After=network.target
[Service]
Type=simple
User=root
WorkingDirectory=/opt/ThingsGateway/Studio
ExecStart=/opt/ThingsGateway/Studio/ThingsGatewayStudio
Restart=always
RestartSec=10
[Install]
WantedBy=multi-user.target
启用和启动 Studio 服务:
sudo systemctl daemon-reload
sudo systemctl enable thingsgateway-studio
sudo systemctl start thingsgateway-studio
sudo systemctl status thingsgateway-studio
启动软件
软件组件说明
ThingsGateway 平台包含以下核心组件:
| 组件 | 端口 | 功能说明 |
|---|---|---|
| Studio | 5100 | 开发环境,提供工程管理、脚本编译、模拟调试功能 |
| GatewayRuntime | 6100 | 网关运行时,提供数据采集、协议转换、报警处理等核心功能 |
| Watchdog | 6200 | 看门狗服务,负责进程管理、健康检查、自动重启、项目管理(仅API,无Web界面) |
重要说明
- Studio 是开发环境,用于工程管理、脚本开发和模拟调试配置
- GatewayRuntime 是生产运行时,提供完整的网关核心功能
访问 Web 界面
访问地址:
| 组件 | 地址 | 用途 |
|---|---|---|
| Studio | http://localhost:5100 | 开发调试 |
| GatewayRuntime | http://localhost:6100 | 生产运行 |
访问步骤:
| 步骤 | 操作 | 说明 |
|---|---|---|
| 1 | 打开浏览器 | Chrome、Edge 等 |
| 2 | 输入地址 | http://localhost:5100 或 http://localhost:6100 |
| 3 | 输入用户名和密码 | 默认:admin / 111111 |
| 4 | 点击登录 | 进入系统 |
界面截图:


图2:Web界面登录页面
登录页面
登录模式
系统支持两种登录模式:
| 模式 | 说明 | 适用场景 |
|---|---|---|
| Studio登录 | 连接Studio开发环境 | 开发调试、项目管理 |
| Gateway登录 | 直接连接网关运行时 | 生产环境、独立部署 |
登录配置
Studio 登录
| 字段 | 说明 | 校验规则 |
|---|---|---|
| 用户名 | 登录账号,默认为 admin | 3-20字符 |
| 密码 | 登录密码,默认为 111111 | 6-20字符 |
| 记住密码 | 勾选后下次登录自动填充用户名和密码 | - |
| 记住连接 | 勾选后下次登录自动填充网关连接地址 | - |
Gateway 登录
| 字段 | 说明 | 校验规则 |
|---|---|---|
| IP地址 | 网关运行时的IP地址 | 必填,合法IP格式(如 192.168.1.100) |
| 端口 | 网关运行时的端口号 | 1-65535,默认6100 |
| 用户名 | 登录账号,默认为 admin | 3-20字符 |
| 密码 | 登录密码,默认为 111111 | 6-20字符 |
| 记住密码 | 勾选后下次登录自动填充用户名和密码 | - |
| 记住连接 | 勾选后下次登录自动填充网关连接地址 | - |
Gateway Only 构建模式
在 Gateway Only 构建模式下,登录页面会自动适配为网关独立登录界面:
- 隐藏 Studio 登录选项
- 直接连接网关运行时
- 适用于独立部署的生产环境
提示
Gateway Only 模式需要在编译时通过构建配置启用,适用于不需要 Studio 开发环境的生产部署场景。
默认登录凭据:
| 项目 | 值 |
|---|---|
| 用户名 | admin |
| 密码 | 111111 |
安全提示
首次登录后,请立即修改默认密码,以确保系统安全。
首次登录配置
登录成功后,建议完成以下初始配置:
| 步骤 | 配置项 | 说明 |
|---|---|---|
| 1 | 修改默认密码 | 进入用户管理,修改 admin 用户密码 |
| 2 | 检查系统状态 | 查看首页的系统运行状态 |
| 3 | 配置采集通道 | 进入数据管理,新增通道并选择采集插件(如Modbus、S7等),配置通讯参数 |
| 4 | 添加设备 | 在通道下新增设备,设置设备地址和采集间隔 |
| 5 | 配置变量 | 在设备下新增变量,设置寄存器地址和数据类型 |
| 6 | 验证采集 | 开启自动刷新,检查变量值是否正常更新 |
| 7 | 配置业务通道 | 新增业务通道(如MQTT、Kafka等),将采集数据转发到外部系统 |
界面截图:

图3:网关Web界面首页
图4:Studio 开发环境界面
下一步
完成快速开始后,您可以继续探索以下功能: