Краткое 5-минутное руководство по развертыванию приложения .NET Core на сервере IIS.

Настройте свой проект .NET Core

При попытке развернуть на сервере IIS убедитесь, что вы уже настроили свои Startup.cs и Program.cs соответственно. На Startup.cs вы должны добавить этот конфиг:

На Program.cs добавьте этот конфиг:

Настройте свой сервер IIS

Скачивание необходимых пакетов

Перед настройкой установите необходимые пакеты.

Скачивание dotnet SDK

Развертываниям нужна только среда выполнения, но если вы хотите иметь более гибкую среду, позволяющую создавать и публиковать dll файлы, а не только запускать их, вам следует установить последнюю версию dotnet SDK здесь.

Установите поставщик учетных данных для артефактов Azure

Затем установите поставщик учетных данных для артефактов Azure. Полные инструкции можно посмотреть здесь.

Руководство по установке поставщика учетных данных Azure Artifacts вручную

Найдите последнюю версию здесь и загрузите .zip-пакет.

Скачав zip-архив, скопируйте папку плагинов в %USERPROFILE%/.nuget.

Задайте переменные среды, откройте Пользовательские переменные и создайте новую запись.

Установите имя переменной на NUGET_PLUGIN_PATHS, и поскольку в этом случае мы собираемся использовать поставщик учетных данных dotnet, установите значение на

%USERPROFILE%\.nuget\plugins\netcore\CredentialProvider.Microsoft\CredentialProvider.Microsoft.dll

Затем завершите настройку, нажав ОК в диалоговом окне Переменные среды.

Опубликуйте свое приложение .NET Core

Вытащить проект из DevOps

Зайдите в каталог, в который хотите поместить приложение.

Войдите во вновь сформированную папку и выполните команду dotnet publish. Более подробную информацию о командах можно увидеть здесь.

Если появится запрос на авторизацию на https://microsoft.com/devicelogin, войдите в систему, используя учетную запись Azure DevOps, и введите код, показанный в окне.

В противном случае он должен показать успешную сборку следующим образом:

В данном случае D:\deploy\api.test\bin\Release\netcoreapp3.1\publish - это физический путь.

Это будет путь, используемый при настройке вашего приложения в приложении IIS.

Запустите .NET Core в IIS

Добавить пул приложений

Щелкните правой кнопкой мыши параметр Пулы приложений.

Выберите вариант Добавить пул приложений.

Назовите пул приложений и установите для версии .NET CLR значение Без управляемого кода.

Затем нажмите ОК.

Добавьте веб-сайт IIS (необязательно)

Эта конфигурация не является обязательной, поскольку вы можете использовать уже существующий сайт.

Щелкните правой кнопкой мыши параметр Сайт.

Нажмите Добавить веб-сайт.

Задайте Имя сайта и физический путь к сборке .NET Core.

Нажмите кнопку Подключиться как…, чтобы подключиться как конкретный пользователь. Задайте свои учетные данные и нажмите ОК.

Нажмите Настройки тестирования, и должно появиться всплывающее окно, подобное этому.

Затем в диалоговом окне Добавить веб-сайт нажмите ОК, чтобы завершить настройку.

Добавьте приложение на сайт IIS

На главной странице сайта нажмите кнопку Просмотреть приложения.

Нажмите действие Добавить приложение.

Установите псевдоним, это будет путь в URL-адресе. Затем установите физический путь к сборке .NET Core.

Затем выберите ранее созданный пул приложений и нажмите ОК.

Нажмите кнопку Подключиться как…. Задайте свои учетные данные и нажмите ОК.

Нажмите Настройки тестирования, и должно появиться всплывающее окно, подобное этому.

Затем в диалоговом окне Добавить приложение нажмите ОК, чтобы завершить настройку.

Когда все шаги выполнены, ваше приложение должно быть запущено. Проверьте это, открыв браузер и введя localhost/*your application alias* в строку поиска.

Резюме

В этом руководстве вы узнали, как обслуживать приложение .NET Core с помощью IIS. Подведем итоги того, что мы сделали:

  • Мы настроили наше веб-приложение .NET Core перед его развертыванием в IIS.
  • Мы установили необходимые компоненты для сервера IIS.
  • Мы установили необходимые пакеты SDK для dotnet и соответствующие поставщики проверки подлинности Azure.
  • Мы настроили IIS для развертывания нашего приложения .NET Core.

Теперь у вас есть открытый сценарий, который можно использовать, когда вы хотите развернуть приложения dotnet на IIS. Надеюсь, этот урок был вам полезен, желаю вам хорошего дня!