快速开始
本指南用于完成 ThingsGatewayRuntime 的首次部署、登录和基础巡检。首次使用时,建议先确认三个 Web 管理入口可以访问,再进入 GatewayRuntime Web 检查网关运行状态、工程信息和基础菜单权限。
当前截图和配置说明按 GatewayRuntime 2.1.22 整理。
本文面向首次接触系统的现场人员。它只说明“服务是否能访问、账号是否能登录、网关是否正常启动”;实际接入 PLC、仪表、点表和上位系统时,请继续阅读对应专题页,不需要从全部文档逐页通读。
| 你现在要做什么 | 继续看哪里 |
|---|---|
| 先把系统跑起来 | 继续阅读本文,确认 Studio、GatewayRuntime、Watchdog 三个入口。 |
| 接入 PLC、仪表或传感器 | 采集配置,按通道、设备、变量顺序配置。 |
| 验证寄存器地址或写入点 | 设备调试,先读后写,写入前确认现场安全。 |
| 把数据发给上位机、MES、SCADA 或云平台 | 数据转发,先小范围联调再扩大点表。 |
| 查看报警、历史数据或运行日志 | GatewayRuntime Web 操作手册,按功能入口查找。 |
服务与访问地址
ThingsGatewayRuntime 由三个 Web 管理入口组成。
| 服务 | 默认地址 | 用途 |
|---|---|---|
| Studio | http://<服务器IP>:5100 | 工程管理、运行时管理、内网穿透 Broker、看门狗连接管理 |
| GatewayRuntime | http://<网关IP>:6100 | 网关运行态配置、采集配置、数据转发、报警、日志、用户权限 |
| Watchdog | http://<网关IP>:6200 | 网关进程守护、项目包上传、日志、备份、隧道客户端、运行参数 |
默认账号为 admin,默认密码为 111111。首次投入生产前,请进入对应系统的账号或设置页面修改默认密码。
Studio 和 Watchdog 的随包配置均监听 0.0.0.0,正式支持直接通过上述 http://IP:端口 地址访问。登录和首次初始化密码会通过一次性 RSA-OAEP-SHA256 公钥挑战加密,普通 HTTP IP 页面不依赖浏览器的 SubtleCrypto 安全上下文。
密码挑战只额外保护登录和初始化时的密码字段,不能替代 HTTPS。Bearer Token、修改密码请求、工程包、备份和其他管理数据在普通 HTTP 链路上仍没有传输加密。隔离工业局域网可按现场要求使用 HTTP IP;公网或不可信网络优先配置 HTTPS。
部署前检查
| 检查项 | 要求 |
|---|---|
| 操作系统 | Windows 10/11、Windows Server 2016+、主流 Linux 发行版 |
| 运行环境 | 正常发布需要 .NET 10 Runtime;AOT发布包可独立运行 |
| 端口 | 确认 5100、6100、6200 未被占用,并按需放行防火墙 |
| 远程管理 | Studio 确认 RemoteManagementEnabled=true;Watchdog 还需 RemoteDeploymentEnabled=true。使用普通 HTTP IP 时,两者都应确认 AllowInsecureRemoteHttp=true |
| 文件目录 | 保持 Studio、WatchDog、GatewayApp、Projects 等目录结构完整 |
| 权限 | Linux 下给可执行文件授予执行权限,Windows 服务安装需管理员权限 |
启动顺序
- 在服务器上启动
ThingsGatewayStudio,用于工程管理和远程部署。 - 在网关设备上启动
ThingsGatewayRuntime.Watchdog,由 Watchdog 管理 GatewayRuntime 进程。 - Watchdog 启动后会按配置检查并启动
GatewayApp中的 GatewayRuntime。 - 打开浏览器访问 Studio、GatewayRuntime 或 Watchdog 的 Web 地址。
登录 GatewayRuntime
访问 http://<网关IP>:6100,输入用户名和密码后点击“登录”。

登录成功后默认进入“系统总览”,可查看通道、设备、变量、报警、系统资源和工程信息。

建议首次登录后完成以下检查。
| 步骤 | 页面 | 操作 |
|---|---|---|
| 1 | 系统总览 | 确认设备数、变量数、CPU、内存、工程信息是否正常 |
| 2 | 采集配置 | 检查通道、设备、变量是否加载,是否存在离线设备 |
| 3 | 数据转发 | 检查转发组和转发目标是否启用,最近活跃时间是否更新 |
| 4 | 系统日志 | 查看后台日志、操作日志、RPC 日志是否存在异常 |
| 5 | 用户管理 | 修改默认密码,按角色分配账号权限 |
登录 Studio
访问 http://<服务器IP>:5100,输入 Studio 账号登录。页面会自动获取两分钟有效的一次性公钥挑战,加密密码后再提交;登录成功后使用 JWT Bearer 访问业务接口。

登录后进入“概览”,可查看当前运行工程、隧道服务、看门狗状态和最近工程。

Studio 常用入口如下。
| 页面 | 用途 |
|---|---|
| 概览 | 查看运行工程、隧道服务、看门狗健康度 |
| 我的工程 | 新建、导入、上传、停止运行时和从网关下载工程 |
| 内网穿透 | 配置 Studio 端隧道 Broker |
| 看门狗 | 管理 Watchdog 连接,测试状态并上传工程 |
登录 Watchdog
访问 http://<网关IP>:6200,输入 Watchdog 账号登录。页面会自动获取一次性公钥挑战并加密密码;登录成功后使用八小时有效的不透明 Bearer 会话。登出会撤销当前会话,Watchdog 重启后需要重新登录。

登录后进入仪表盘,可查看网关进程状态、运行参数和实时日志。

Watchdog 常用入口如下。
| 页面 | 用途 |
|---|---|
| 仪表盘 | 查看网关运行状态,执行重启、停止、查看日志等运维动作 |
| 项目管理 | 上传项目包、应用项目、下载或删除项目 |
| 日志查看 | 查询和导出 Watchdog 运行日志 |
| 备份管理 | 创建、恢复、删除项目备份 |
| 隧道管理 | 配置 Watchdog 端隧道客户端 |
| 设置 | 修改账号、网关运行参数、备份策略和安全来源 |
Windows 服务部署
以管理员身份打开 PowerShell,根据实际路径创建服务。
sc.exe create "ThingsGateway Watchdog" binPath= "D:\ThingsGateway\WatchDog\ThingsGatewayRuntime.Watchdog.exe" start= auto DisplayName= "ThingsGateway Watchdog Service"
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"
Linux 服务部署
示例服务文件如下,请按实际目录调整 WorkingDirectory 和 ExecStart。
[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
启用服务。
sudo systemctl daemon-reload
sudo systemctl enable thingsgateway
sudo systemctl start thingsgateway
sudo systemctl status thingsgateway
Studio 与 Watchdog 登录故障
| 现象 | 处理建议 |
|---|---|
localhost 能访问但设备 IP 无法访问 | 确认监听地址为 0.0.0.0、远程管理开关已开启、普通 HTTP 时 AllowInsecureRemoteHttp=true,并放行 5100 或 6200 端口。 |
页面提示 Cannot read properties of undefined (reading 'importKey') | 当前前端不调用 subtle.importKey。清除浏览器和代理缓存,重新发布完整静态资源,并确认登录时加载的 node-forge 动态资源返回 200。 |
| 登录提示挑战无效或已过期 | 刷新登录页或重新提交,页面会获取新挑战;挑战两分钟过期且只能使用一次。 |
| Watchdog 登录后又跳回登录页 | 检查服务是否刚重启、会话是否超过八小时;重新登录获取新 Bearer Token。 |
| Studio 显示 Watchdog 离线 | 从 Studio 服务器访问 http://<WatchdogIP>:6200,再检查账号、远程管理开关、防火墙和 Watchdog 日志。 |