У меня есть приложения ASP.NET Core 2.0, которые размещены в IIS на компьютере с Windows 2012RC2.Мы используем Дженкинс для CI.Следующие команды будут выполняться на сервере сборки, на котором установлен Jenkins.Пользователь, под которым работает 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: ошибка: попытка подключения не удалась, потому что подключенная сторона не ответила должным образом через определенный промежуток времени, или не удалось установить соединение, поскольку подключенный хост не смог ответить 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
.
(Примечание. У меня есть другие классические веб-приложения ASP.NET, и Дженкинс может развернуть эти проекты на одном целевом сервере, используя MSBuild и службу агента веб-развертывания, поэтому я уверен, что соединение с сервера сборкицелевой веб-сервер там и работает)
Я не уверен, почему MSDEPLOY здесь пытается подключиться к Web Management Service
вместо использования Web Deployment Agent Service
.Вот разработка.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>