Asp.net core ASP.NET核心应用程序作为Windows服务CI/CD管道

Asp.net core ASP.NET核心应用程序作为Windows服务CI/CD管道,asp.net-core,azure-devops,Asp.net Core,Azure Devops,我将ASP.NET核心应用程序配置为Windows服务 我需要在Windows计算机上使用VSTS管道部署我的应用程序,但找不到如何使用Windows服务进行部署 任何帮助都将不胜感激:)首先,您需要一个生成管道,将生成的代码发送到一个包中(即,NET核心任务以获取依赖项、生成代码并发布代码。此代码应放在$(build.ArtifactStagingDirectory)中然后将其发布到drop中。所有这些都是现成模板中的标准.NET核心构建管道内容。除此之外,您还需要一个复制任务,该任务将pow

我将ASP.NET核心应用程序配置为Windows服务

我需要在Windows计算机上使用VSTS管道部署我的应用程序,但找不到如何使用Windows服务进行部署


任何帮助都将不胜感激:)

首先,您需要一个生成管道,将生成的代码发送到一个包中(即,NET核心任务以获取依赖项、生成代码并发布代码。此代码应放在$(build.ArtifactStagingDirectory)中然后将其发布到drop中。所有这些都是现成模板中的标准.NET核心构建管道内容。除此之外,您还需要一个复制任务,该任务将powershell文件(我稍后将介绍)复制到$(build.ArtifactStagingDirectory)中

发布管道将进行部署,您需要做一些不同的事情,因为我不知道有什么市场任务可以真正帮助您。在发布管道中,我们真正需要做的是创建一个部署,遵循本文档中的一些步骤(4-7)()详细介绍了安装ASP.NET Windows服务的步骤

我建议您在一个或多个powershell脚本中编写步骤4-7,并将其提交到您的代码库中,并通过前面提到的复制任务进行处理

在发行版中,它将从您的构建工件下载发布的服务代码和部署服务所需的powershell文件。然后,发行版管道需要做的就是将服务exe代码复制到服务部署目录中(在示例步骤中,它使用c:\svc将文件复制到此处)。然后在上面的脚本上执行一个或多个powershell任务,以便代理运行这些步骤以正确安装服务

以上假设使用本地安装在要部署到的服务器上的专用管道代理。如果要将同一服务部署到多台服务器,则应查看发布管道的部署组,但上述步骤的工作方式应相同。只需在部署组阶段执行所有任务,而不是使用常规代理即可t相


希望这会有所帮助。

首先感谢Colin给出的有趣答案。因为我发现文档没有太大帮助,所以您的答案似乎对我非常有用。因此,您建议使用几个自定义powershell脚本在目标计算机上注册windows服务,对吗?并将这些脚本用作VSTS中的发布管道任务