Windows部署
提示如果需要Runtime依赖部署,需要安装ASP.NET Core Runtime,如果是独立发布部署,则不需要安装Runtime
一、Windows部署概述
1.1 部署方式
ThingsGateway 在 Windows 系统上支持多种部署方式:
- Windows 服务部署:将网关安装为 Windows 服务,实现开机自启动和后台运行
- 控制台应用部署:以控制台应用程序方式运行,便于调试和开发
二、Windows 服务部署
2.1 使用脚本创建服务
ThingsGateway 提供了便捷的脚本文件,可以快速创建 Windows 服务。
2.1.1 创建服务
- 以管理员身份运行
WindowsServiceCreate.bat脚本 - 脚本会自动创建名为
ThingsGateway的 Windows 服务 - 服务会自动设置为开机自启 动
2.1.2 查看服务
运行脚本后可以在 Windows 服务中找到 ThingsGateway:
- 按
Win + R打开运行对话框 - 输入
services.msc并回车 - 在服务列表中找到
ThingsGateway服务
2.1.3 删除服务
如需删除服务,运行 WindowsServiceDelete.bat 脚本。
2.2 使用 SC 命令创建服务
遵循 Windows 服务安装/启动/停止方式,可以使用 sc 命令手动创建服务。
2.2.1 创建服务命令
sc create ThingsGateway binPath= "C:\ThingsGateway\ThingsGateway.Server.exe" start= auto DisplayName= "ThingsGateway 网关服务"
2.2.2 参数说明
| 参数 | 说明 |
|---|---|
create | 创建新服务 |
binPath= | 服务可执行文件路径(注意等号后有空格) |
start= | 启动类型:auto(自动)、demand(手动)、disabled(禁用) |
DisplayName= | 服务显示名称 |
2.2.3 配置服务
# 设置服务描述
sc description ThingsGateway "ThingsGateway 物联网边缘网关服务"
# 设置服务依赖
sc config ThingsGateway depend= Tcpip
# 设置服务登录账户
sc config ThingsGateway obj= ".\LocalSystem" password= ""
2.3 服务管理命令
2.3.1 启动服务
# 使用 sc 命令
sc start ThingsGateway
# 使用 net 命令
net start ThingsGateway
2.3.2 停止服务
# 使用 sc 命令
sc stop ThingsGateway
# 使用 net 命令
net stop ThingsGateway
2.3.3 查询服务状态
# 使用 sc 命令
sc query ThingsGateway
# 使用 net 命令
net start | findstr ThingsGateway
2.3.4 删除服务
# 先停止服务
sc stop ThingsGateway
# 删除服务
sc delete ThingsGateway
三、控制台应用部署
3.1 直接运行
可以直接双击ThingsGateway.Server.exe
以控制台应用程序方式运行,便于调试和开发:
cd C:\ThingsGateway
dotnet ThingsGateway.Server.dll
3.2 指定端口运行
dotnet ThingsGateway.Server.dll --urls="http://*:5000"
3.3 指定环境运行
dotnet ThingsGateway.Server.dll --environment="Production"