Поделиться через


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

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

Получите помощь по задаче развертывания:

создание нового профиля публикации: снимок экрана.

снимок экрана: создать новый профиль публикации.

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

Какие варианты публикации подходит для меня?

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

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

Снимок экрана выбора параметра публикации.

Снимок экрана выбора варианта публикации.

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

Лазурный

При выборе Azure можно выбрать один из вариантов:

снимок экрана: выбор службы Azure.

снимок экрана: выбор службы Azure.

Приложения контейнеров Azure

Azure Container Apps помогает разработчикам создавать контейнеризованные веб-приложения и службы и управлять ими.

Хотя вы можете развернуть контейнерное приложение в Службе приложений Azure, приложения контейнеров Azure оптимизированы для использования ресурсов более эффективно для контейнерных приложений, поэтому есть экономия затрат, а также другие преимущества использования приложений контейнеров Azure.

Когда выбирать контейнерные приложения Azure

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

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

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

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

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

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

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

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

Веб-задания Azure

Веб-задания Azure поддерживаются через службу приложений. См. статью Разработка и развертывание веб-заданий с помощьюVisual Studio.

Когда следует выбирать веб-задания Azure

  • У вас есть рабочий процесс, вычисления, которые могут выполняться без взаимодействия с пользователем.
  • Задание выполняется по запросу, запускается событием или выполняется непрерывно.
  • Задание выполняется в Windows или .NET Core в Linux (с Visual Studio 17.12 или более поздней версии).

Другим вариантом для аналогичных сценариев является Функция Azure. Чтобы выбрать подходящий вариант, см. выбрать правильные службы интеграции и автоматизации в Azure.

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

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

Когда следует выбрать реестр контейнеров Azure

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

Дополнительные сведения:

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

Виртуальные машины Azure (VMs) позволяют создавать и управлять любым количеством вычислительных ресурсов в облаке. Принимая на себя ответственность за все программное обеспечение и обновления на виртуальных машинах, вы можете настроить их так же, как и требуется приложению. Вы можете получить доступ к виртуальным машинам непосредственно через удаленный рабочий стол, и каждый из них будет поддерживать назначенный 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 см. в статье Развертывание приложения .NET Для Windows с помощью ClickOnce.

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

FTP/FTPS-сервер

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

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

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

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

Когда выбрать развертывание сервера FTP/FTPS

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

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

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

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

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

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

Когда выбирать развертывание веб-сервера (IIS)

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

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

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

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

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

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

Когда выбрать профиль импорта

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

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

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

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

Дальнейшие действия

Учебники: