Развертывание приложения в папке, IIS, Azure или другом расположении

Развертывание приложения, службы или компонента — это механизм их распространения для установки на других компьютерах, устройствах, серверах и в облаке. В Visual Studio можно выбрать соответствующий подход в зависимости от требуемого типа развертывания.

Справочные сведения о задаче развертывания:

  • Чтобы выполнить развертывание в новый целевой объект, если вы ранее создали профиль публикации, для настроенного профиля в окне Публикация выберите Создать.

    Screenshot of Create a new publish profile.

    Затем выберите вариант развертывания в средстве публикации. Сведения о вариантах публикации см. в следующих разделах.

  • Чтобы развернуть в новом целевом объекте, если вы ранее создали профиль публикации, выберите "Опубликовать выбор " в меню "Сборка " для настроенного профиля.

    Screenshot of Create a new publish profile.

    Затем выберите вариант развертывания в средстве публикации. Сведения о вариантах публикации см. в следующих разделах.

Выбор подходящих вариантов публикации

Из среды Visual Studio приложения можно публиковать напрямую в следующие целевые объекты:

Как показано на следующем рисунке, при создании профиля публикации появятся перечисленные выше варианты.

Screenshot of Choose a publishing option.

Screenshot of Choose a publishing option.

Краткий обзор общих вариантов развертывания приложений см. в статье Первое знакомство с развертыванием.

Azure

В Azure можно выбрать один из следующих вариантов:

Screenshot of Choose an Azure service.

Screenshot of Choose an Azure service.

Служба приложений Azure

Служба приложений Azure помогает разработчикам быстро создавать масштабируемые веб-приложения и службы, не беспокоясь о поддержке инфраструктуры. Служба приложений выполняется на облачных виртуальных машинах в Azure, но эти виртуальные машины являются управляемыми. Каждому приложению в Служба приложений будет назначен уникальный URL-адрес *.azurewebsites.net; все ценовые категории, отличные от бесплатных, разрешают назначение имен личного домена сайту.

Вычислительная мощность службы приложений определяется выбором ценовой категории или плана для размещающей службы приложений. Несколько веб-приложений (или приложений другого типа) могут совместно использовать одну и ту же службу приложений без изменения ценовой категории. Например, веб-приложения для разработки, промежуточного этапа и рабочей среды можно разместить в одной службе приложений.

Когда следует использовать службу приложений Azure

  • Вы хотите развернуть веб-приложение, которое доступно через Интернет.
  • Вы хотите автоматически масштабировать веб-приложение в соответствии с запросами без необходимости повторного развертывания.
  • Вы не хотите поддерживать серверную инфраструктуру (в том числе обновлять программное обеспечение).
  • Вы не хотите выполнять настройки уровня компьютера на серверах, где размещено веб-приложение.

Если вы хотите использовать службу приложений Azure в своем центре обработки данных или на других локальных компьютерах, воспользуйтесь для этого Azure Stack.

Дополнительные сведения о публикации в Службе приложений см. в следующих статьях:

Реестр контейнеров Azure

Реестр контейнеров Azure позволяет создавать, хранить, а также администрировать образы и артефакты контейнеров Docker в частном реестре для всех типов развертываний контейнеров.

В каких случаях нужно выбрать Реестр контейнеров Azure

  • Если у вас уже есть конвейер разработки и развертывания для контейнера Docker.
  • Если вы хотите создать образы контейнеров Docker в Azure.

Дополнительные сведения см. по ссылке .

Виртуальная машина Azure

Виртуальные машины Azure позволяют создавать любое количество вычислительных ресурсов в облаке и управлять ими. Принимая на себя ответственность за все программное обеспечение и обновления на виртуальных машинах, вы можете настроить их в соответствии с требованиями своего приложения. Вы можете обращаться к виртуальным машинам напрямую через удаленный рабочий стол, и для каждой из них назначенный IP-адрес будет существовать столько, сколько нужно.

Масштабирование приложения, размещенного на виртуальных машинах, предполагает запуск дополнительных виртуальных машин по требованию и последующее развертывание необходимого программного обеспечения. Этот дополнительный уровень управления позволяет вам применять разные режимы масштабирования в разных глобальных регионах. Например, если ваше приложение обслуживает сотрудников в различных региональных офисах, вы можете масштабировать ваши виртуальные машины в зависимости от количества сотрудников в этих регионах, что способствует сокращению затрат.

Дополнительные сведения см. в статье с подробным сравнением Службы приложений Azure, Виртуальных машин Azure и других служб Azure, которые можно использовать в качестве целевого объекта развертывания, применив параметр "Пользовательский" в Visual Studio.

В каких случаях нужно выбрать виртуальные машины Azure

  • Вы хотите развернуть веб-приложение, доступное через Интернет, с полным контролем над временем существования назначенных IP-адресов.
  • Вам требуются настройки уровня компьютера на серверах, к которым относится установка дополнительного программного обеспечения, такого как специальная система базы данных, определенные сетевые конфигурации, разделы диска и т. д.
  • Вам требуется точный контроль над масштабированием веб-приложения.
  • Вам по любой причине необходим прямой доступ к серверам, на которых размещается приложение.

Если вы хотите использовать виртуальные машины Azure в своем центре обработки данных или на других локальных компьютерах, воспользуйтесь для этого Azure Stack.

Реестр контейнеров Docker

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

В каких случаях следует выбирать реестр контейнеров Docker

  • Вам требуется развернуть контейнерное приложение

Дополнительные сведения см. в следующих разделах:

DevTest Labs

Используйте параметр развертывания папок в средстве публикации, если вы хотите развернуть в Azure DevTest Labs.

Инструкции см. в статье "Публикация приложения для тестирования на виртуальной машине Azure DevTest Labs". В связанной статье шаги публикации папки применяются к .NET Core/.NET 5+. Остальные инструкции применяются как к .NET, так и к платформа .NET Framework. Для платформа .NET Framework приложений ClickOnce можно использовать мастер публикации для публикации в папке.

Папка

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

Начиная с Visual Studio 2019 16.8, целевой объект папки включает возможность публикации приложения .NET Для Windows с помощью ClickOnce.

Если вы хотите опубликовать классический проект .NET Windows (.NET Core 3.1, .NET 5 и более поздних версий) с помощью ClickOnce, см. статью "Развертывание приложения .NET Windows с помощью ClickOnce".

Все локальные компьютеры под управлением сервера могут предоставить доступ к приложению через Интернет или интрасеть в зависимости от его настройки и настройки сетей, к которым он подключен. (Если вы подключаете компьютер непосредственно к Интернету, будьте особенно осторожны, чтобы защитить его от внешних угроз безопасности.) Так как вы управляете этими компьютерами, вы полностью управляете конфигурациями программного обеспечения и оборудования.

Если по какой-либо причине (например, из-за особенностей доступа к компьютеру) вы не можете использовать облачные службы, например Службу приложений Azure или Виртуальные машины Azure, можно использовать Azure Stack в центре обработки данных. Azure Stack позволяет использовать вычислительные ресурсы и управлять ими с помощью службы приложений Azure и виртуальных машин Azure, поддерживая все активы в локальной среде.

Когда следует использовать развертывание файловой системы

  • Вам требуется только развернуть приложение в общей сетевой папке, откуда другие пользователи будут развертывать его на разных серверах.

  • Вам нужно развернуть приложение .NET для Windows с помощью ClickOnce

  • Вам необходимо только локальное тестовое развертывание.

  • Вы хотите проверять и при необходимости изменять файлы приложения независимо друг от друга перед их отправкой в другой целевой объект развертывания.

Дополнительные сведения см. в статье Краткое руководство. Развертывание в локальную папку.

Дополнительные сведения о развертывании приложения .NET для Windows с использованием ClickOnce см. в этой статье.

Дополнительные сведения о выборе параметров см. в следующих статьях:

сервер FTP или FTPS;

Вариант "Сервер FTP или FTPS" позволяет развернуть приложение на сервере вне платформы Azure. Его можно развернуть в файловой системе или на любом другом сервере (в Интернете или интрасети), к которому у вас есть доступ, включая области в других облачных службах. Он может работать с веб-развертыванием (файлы или ZIP) и FTP.

Если вы выберете вариант "Сервер FTP или FTPS", Visual Studio запросит имя профиля и дополнительные сведения о подключении, включая данные о целевом сервере или расположении, имя сайта и учетные данные. Вы можете выбрать следующие варианты поведения на вкладке Параметры.

  • Конфигурации, которые нужно развернуть.
  • Нужно ли удалить существующие файлы из назначения.
  • Использовать ли предварительную компиляцию во время публикации.
  • Следует ли исключать из развертывания файлы, размещенные в папке App_Data.

В Visual Studio вы можете создать любое количество профилей развертывания для FTP или FTPS, что позволяет использовать несколько профилей с разными параметрами.

В каких случаях нужно выбрать развертывание на сервере FTP или FTPS

  • Вы используете облачные службы на платформе, отличной от Azure, доступ к которой возможен через URL-адреса.
  • Вы хотите использовать для развертывания учетные данные, отличные от используемых в Visual Studio, или напрямую связанные с вашими учетными записями Azure.
  • Вы хотите удалять файлы из целевого объекта при каждом развертывании.

Веб-сервер (IIS)

Вариант "Веб-сервер (IIS)" позволяет развернуть приложение на веб-сервере вне платформы Azure. Поддерживается развертывание на любом сервере IIS (в Интернете или интрасети), к которому у вас есть доступ, в том числе в других облачных службах. Этот вариант совместим с расширением или пакетом веб-развертывания.

Если вы выберете вариант "Веб-сервер (IIS)", Visual Studio запросит имя профиля и дополнительные сведения о подключении, включая данные о целевом сервере или расположении, имя сайта и учетные данные. Вы можете выбрать следующие варианты поведения на вкладке Параметры.

  • Конфигурации, которые нужно развернуть.
  • Нужно ли удалить существующие файлы из назначения.
  • Использовать ли предварительную компиляцию во время публикации.
  • Следует ли исключать из развертывания файлы, размещенные в папке App_Data.

В Visual Studio вы можете создать любое количество профилей развертывания для веб-сервера IIS, что позволяет использовать несколько профилей с разными параметрами.

В каких случаях нужно выбрать развертывание на веб-сервере IIS

  • Если вы уже используете IIS для публикации сайта или службы, доступ к которым осуществляется по URL-адресам.
  • Вы хотите использовать для развертывания учетные данные, отличные от используемых в Visual Studio, или напрямую связанные с вашими учетными записями Azure.
  • Вы хотите удалять файлы из целевого объекта при каждом развертывании.

Дополнительные сведения см. в кратком руководстве по развертыванию на веб-сайте

и статье Устранение неполадок с ASP.NET Core в Службе приложений Azure и IIS.

Импортировать профиль

Вы можете импортировать профиль при публикации в службу IIS или Службу приложений Azure. Развертывание можно настроить с помощью файла параметров публикации (*.publishsettings). Файл параметров публикации создается IIS или Службой приложений Azure либо может быть создан вручную, после чего его можно импортировать в Visual Studio.

Использование файла параметров публикации позволяет упростить настройку развертывания и лучше подходит для групповой среды, чем настройка каждого профиля развертывания вручную.

В каких случаях нужно выбрать профиль импорта

  • Если уже настроена публикация в IIS, но вы намерены упростить настройку развертывания.
  • Если уже настроена публикация в IIS или Службу приложений Azure, но вы хотите ускорить настройку развертывания для повторного использования или публикации для членов группы в той же службе.

Дополнительные сведения см. в следующих разделах:

Настройка параметров развертывания .NET

Дополнительные сведения о выборе параметров см. в следующих статьях:

Следующие шаги

Руководства.