使用 Azure Pipeline 从命令行启动 Kestrel?

问题描述 投票:0回答:1

我们目前正在使用管道从 .NET Core 项目生成工件,然后通过发布管道将该工件部署到虚拟机。管道获取工件并将其解压缩到虚拟机上的文件夹中。之后,我们手动连接到虚拟机并启动 Kestrel,方法是运行项目的可执行文件或运行

dotnet ProjectName.dll

所有这些工作都很好,只是我们想自动化最后一部分。如果可能的话,我希望避免重新配置所有内容来使用 IIS。有没有办法让

dotnet
命令从管道执行,也许通过某种方式创建一个可以启动来执行
dotnet
命令的服务?

对于上下文 - 这都是针对内部 QA 环境的。所有这些都不会暴露给公众,所有流量都被防火墙限制为内部 IP 地址。手动停止/启动实际上并不是一个大问题,因为我们预计不会长期需要它 - 如果整个过程完全自动化就好了。

asp.net-core azure-devops azure-pipelines kestrel-http-server azure-artifacts
1个回答
0
投票

好吧 - 经过一番挖掘后,我解决了这个问题,首先使用 NSSM 注册一个运行项目

.exe
文件的服务,然后添加两个额外的步骤。在提取/复制之前,我使用
net stop myService
添加了一个脚本任务,在提取/复制之后,我使用
net start myService
添加了一个脚本任务。

© www.soinside.com 2019 - 2024. All rights reserved.