Как развернуть не VS проекты в веб-развертывании iis?

У меня есть приложение Angular и размещено в IIS. Я хочу развернуть это приложение с помощью Web Deploy.

Я знаю, что VS решения (.sln) могут быть развернуты с использованием MSBUILD и Publish Profiles.

Как развернуть не VS, статические приложения, используя веб-развертывание?

Я ищу вариант для развертывания с сервера сборки Bamboo на удаленную цель IIS.

3 ответа

Решение

Как говорит Лекс Ли, если вы хотите опубликовать размещенное приложение angualr в другом IIS с помощью веб-развертывания, вы можете использовать метод веб-развертывания синхронизации.

Если вы просто хотите синхронизировать 2 папки напрямую, root-to-root, попробуйте следующую команду:

Примечание: инструмент webdeploy обычно находится внутри C:\Program Files (x86)\IIS\ папку, вам нужно сначала найти ее.

>msdeploy  -verb:sync -source:dirPath="D:\my-app\dist" -dest:dirPath="D:\AnTest"

Если вы хотите включить конфигурацию IIS в место назначения, вы должны использовать провайдера iisApp вместо dirPath:

>msdeploy  -verb:sync -source:iisApp=<SourceFolderOrIISPath> -dest:iisApp=<DestinationFolderOrIISPath>

Я пошел со следующим подходом:

  1. Настройте папку dist углового проекта в angular.json => проекты> ваш_проект> архитектор> сборка> параметры> outputPath> your_dist_folder

  2. построить угловой проект

  3. В Visual Studio внутри решения щелкните правой кнопкой мыши> Добавить существующий веб-сайт и выберите папку встроенного углового кода.

  4. Щелкните правой кнопкой мыши новый веб-сайт > Опубликовать веб-приложение.

  5. Создать профиль веб-развертывания

  6. Опубликовать с новым профилем

Установите msdeploy на бамбуковый агент. Используйте задачу сценария и используйте эту строку:

"C:\Program Files (x86)\IIS\Microsoft Web Deploy V3\msdeploy.exe" -verb:sync -source:iisApp=<SourceFolderOrIISPath> -dest:iisApp=<DestinationFolderOrIISPath>

Если у вас есть другой путь к msdeploy, вы вместо этого вводите этот путь.

Другие вопросы по тегам