1

我有 ASP.NET Core 2.0 应用程序托管在 Windows 2012RC2 机器上的 IIS 中。我们将 Jenkins 用于 CI。以下命令将在安装了 Jenkins 的 Build Server 上执行。运行 Jenkins 的用户具有完全的域管理员访问权限。

要构建和部署应用程序,我想使用此处提到的发布配置文件选项。
所以我创建了发布配置文件并在构建服务器上执行了以下命令

dotnet publish D:\Jenkins\MyProject\workspace\MyApplication\Src\Api\Api.csproj /p:PublishProfile=development.pubxml

它成功构建了项目,但在部署过程中出现错误:

MSDEPLOY:错误代码:ERROR_DESTINATION_NOT_REACHABLE [D:\Jenkins\MyProject\workspace\MyApplication\Src\Api\Api.csproj]

MSDEPLOY:错误:无法连接到远程服务器 [D:\Jenkins\MyProject\workspace\MyApplication\Src\Api\Api.csproj]

MSDEPLOY : error : 连接尝试失败,因为连接方在一段时间后没有正确响应,或者连接失败,因为连接的主机没有响应 XXXXXXXXXX:8172

MSDEPLOY:错误计数:1. [D:\Jenkins\MyProject\workspace\MyApplication\Src\Api\Api.csproj]

根据看起来 MSDEPLOY 正在尝试使用的错误IIS Web Management Service,我没有Web Management Service在目标服务器上安装。(我不想)。相反,我已经Web Deployment Agent Service在目标 Web 服务器上安装了。

(注意:我有其他经典的 ASP.NET Web 应用程序,Jenkins 能够使用 MSBuild 和 Web 部署代理服务将这些项目部署到同一个目标服务器,所以我确信从构建服务器到目标 Web 服务器的连接在那里并且工作)

我不确定为什么这里的 MSDEPLOY 尝试连接Web Management Service而不是使用Web Deployment Agent Service. 这是 development.pubxml

<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
  <PropertyGroup>
    <WebPublishMethod>MSDeploy</WebPublishMethod>
    <LastUsedBuildConfiguration>Release</LastUsedBuildConfiguration>
    <LastUsedPlatform>Any CPU</LastUsedPlatform>
    <SiteUrlToLaunchAfterPublish />
    <LaunchSiteAfterPublish>True</LaunchSiteAfterPublish>
    <ExcludeApp_Data>False</ExcludeApp_Data>
    <TargetFramework>netcoreapp2.0</TargetFramework>
    <ProjectGuid>ec75aa7b-c5ca-4d08-a80e-0d70c604f85c</ProjectGuid>
    <MSDeployServiceURL>target machine name</MSDeployServiceURL>
    <DeployIisAppPath>MyIISApplicationPath</DeployIisAppPath>
    <RemoteSitePhysicalPath />
    <SkipExtraFilesOnServer>False</SkipExtraFilesOnServer>
    <MSDeployPublishMethod>WMSVC</MSDeployPublishMethod>
    <EnableMSDeployBackup>True</EnableMSDeployBackup>
    <UserName />
    <_SavePWD>False</_SavePWD>
    <AuthType>NTLM</AuthType>
  </PropertyGroup>
</Project>
4

0 回答 0