VSTS托管代理与私有代理

Reg*_*oob 0 asp.net iis tfs azure-pipelines tfs2017

在部署方面,使用托管代理和私有代理有什么区别?

如果我错了,请纠正我-私有代理是一项私人托管的服务,它会不断检查是否有新的构建触发以对其配置定义执行的构建定义进行触发,然后从VSTS中提取源代码并在本地调用MSBuild那台机器。

如果在该构建定义中有要执行的PowerShell发布脚本,它也会运行该脚本-可以处理实际的部署等。

也许还有更多处理部署的方法,但是托管代理将如何工作?

为简单起见,让我们假设只要触发了新的构建,就应该将ASP.NET应用程序部署到IIS。

Cha*_*daC 6

应该使用VSTS构建来构建您的软件包,而应该使用VSTS版本管理来进行部署。也可以通过构建来执行部署任务,但是一种更受控制和推荐的方法是将VSTS中的发行管理用于部署目的。

托管代理

VSTS有四个托管代理

  1. 没有Visual Studio 2017的托管代理
  2. 具有Visual Studio 2017支持的托管代理
  3. Linux上的代理
  4. Mac上的代理

这些托管代理可用于对服务器进行构建和部署,这些服务器可从代理公开访问。假设您要部署到Azure Web应用程序,则可以在VSTS版本管理中使用托管代理来运行所需的部署脚本或任务。

但是这些托管代理对您的本地网络没有“视线”。例如,公司防火墙后面的计算机不会公开公开。在这种情况下,托管代理无法部署到企业防火墙后的计算机上,因为该代理无法看到您的计算机。

私人代理

您可以在公司域中为VSTS设置代理,该代理可以通过Web访问VSTS,因此它可以侦听任何部署作业。防火墙内部的此私有代理对防火墙内部的计算机具有“视线”,因此代理可以对其进行部署。

当您需要特定的SDK可用性(托管代理不可用)时,可能需要专用代理进行构建的其他方案。假设您有一个基于SharePoint 2013的应用程序。要进行构建,构建服务器需要安装SharePoint 2013,但托管代理中未提供此功能。您必须使用专用代理来设置SharePoint 2013,以允许基于SharePoint 2013构建应用程序。

有关更多详细信息,请参阅此处

部署组

您可以使用部署组对企业域防火墙内的计算机进行部署,因为将私有代理部署到需要进行部署的每台计算机上。部署组在此处进行说明。