如何将web命令的发布命令用于asp.net核心应用程序

时间:2018-05-17 22:27:42

标签: asp.net-core msdeploy coreclr microsoft-web-deploy webdeploy-3.6

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

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

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:错误:连接尝试失败,因为连接方已执行   一段时间后没有正确回应,或建立连接   失败,因为已连接的主机无法响应XXXXXXXXXX:8172

     

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

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

(注意:我有其他经典的ASP.NET Web应用程序,Jenkins能够使用MSBuild和Web Deployment Agent Service将这些项目部署到同一目标服务器,因此我确信从构建服务器到目标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>

0 个答案:

没有答案