Развертывание веб-приложения C# ASP.NET на виртуальной машине в Azure Stack Hub
Вы можете создать виртуальную машину для размещения веб-приложения C# ASP.NET в Azure Stack Hub. В этой статье показано, как настроить сервер, настроить его для размещения веб-приложения C# ASP.NET, а затем развернуть приложение прямо из Visual Studio.
Эта статья посвящена использованию Azure Stack Hub. Azure можно запустить в центре обработки данных с помощью Azure Stack Hub. Если вы ищете рекомендации по глобальной среде Azure, ознакомьтесь с публикацией приложения ASP.NET Core в Azure с помощью Visual Studio.
Создание виртуальной машины
Создайте виртуальную машину и установите компоненты, необходимые для размещения веб-приложения .NET. Вам потребуется консоль управления IIS, веб-служба управления, среда выполнения .NET и веб-развертывание Майкрософт на виртуальной машине. Вам потребуется открыть порты для веб-сервера и веб-развертывания с компьютера разработки. При установке среды выполнения .NET убедитесь, что вы используете одну и ту же версию .NET как на целевом сервере, так и на компьютере разработки.
Создайте виртуальную машину Windows Server.
Чтобы установить компоненты IIS (с консолью управления) и .NET 5.0 на виртуальной машине, выполните следующий сценарий в консоли PowerShell 5.x:
# Install IIS (with Management Console) Install-WindowsFeature -name Web-Server -IncludeManagementTools # Install Web Management Service Install-WindowsFeature -Name Web-Mgmt-ServiceСкачайте .NET 5.0 на виртуальной машине.
Скачайте веб-развертывания версии 3.6. Установите его с помощью MSI-файла, а затем включите все компоненты.
На портале Azure Stack Hub откройте порты, перечисленные в параметрах сети для виртуальной машины.
а. Откройте портал Azure Stack Hub для своего клиента.
b. Найдите вашу виртуальную машину. Возможно, вы закрепили ее на панели мониторинга. Найти виртуальную машину можно с помощью поля Поиск ресурсов.
c. Выберите Сети.
Г. В разделе виртуальной машины выберите Добавить правило входящего порта.
Д. Добавьте правило безопасности для входящего трафика для следующих портов:
Порт Протокол Описание 80 HTTP HTTP — это протокол, который используется для доставки веб-страниц с серверов. Клиенты подключаются по протоколу HTTP, используя DNS-имя или IP-адрес. 443 HTTPS HTTPS — это безопасная версия протокола HTTP, которая использует сертификат безопасности и обеспечивает передачу данных в зашифрованном виде. 22 SSH Secure Shell (SSH) — это сетевой протокол с применением шифрования для безопасного обмена данными. Вы будете использовать это соединение с клиентом SSH для настройки виртуальной машины и развертывания приложений. 3389 RDP Необязательный параметр. Протокол удаленного рабочего стола позволяет выполнять подключение к удаленному рабочему столу, чтобы использовать графический пользовательский интерфейс вашего компьютера. 8172 Другой Порт, используемый веб-развертыванием. Для каждого порта:
а. В поле Источник выберите Любой.
b. В поле Диапазон исходных портов введите звездочку (*).
c. Для параметра Назначение выберите значение Любой.
Г. Добавьте порт, который вы хотите открыть, в поле Диапазон портов назначения.
Д. Для параметра Протокол выберите значение Любой.
е) В поле Действие выберите Разрешить.
ж. Оставьте значение по умолчанию для параметра Приоритет.
h. Введите имя и описание. Это поможет запомнить, почему порт был открыт.
i. Выберите Добавить.
В параметрах обзора для виртуальной машины в Azure Stack Hub создайте DNS-имя для сервера. Пользователи могут подключаться к веб-сайту по URL-адресу.
а. Откройте портал Azure Stack Hub для своего клиента.
b. Найдите вашу виртуальную машину. Возможно, вы закрепили ее на панели мониторинга. Найти виртуальную машину можно с помощью поля Поиск ресурсов.
c. Щелкните Обзор.
Г. В разделе DNS выберите "Настроить".
Д. Для параметра Назначение выберите значение Динамическое.
е) Введите метку DNS-имени, например mywebapp, чтобы полный URL-адрес стал таким, как mywebapp.region.cloudapp.azurestack.corp.contoso.com.
Создание приложения
Вы можете использовать приложение .NET по умолчанию в Visual Studio, собственное веб-приложение, например публикацию приложения ASP.NET Core в Azure с помощью Visual Studio. В статье описывается создание и публикация веб-приложения ASP.NET на виртуальной машине Azure с помощью функции публикации виртуальных машин Azure в Visual Studio 2019. После установки приложения убедитесь, что оно запущено локально, и обновите цель публикации на виртуальной машине Windows в своем экземпляре Azure Stack Hub.
Развертывание и запуск приложения
Создайте целевой объект публикации с компьютера разработки на виртуальной машине в Azure Stack Hub.
Щелкните правой кнопкой мыши проект в обозревателе решений и выберите Опубликовать.

В окне публикации нажмите кнопку "Создать".
Выберите веб-сервер (IIS).
Нажмите кнопку "Далее>веб-развертывание>".
Для сервера введите DNS-имя, определенное ранее, например
mywebapp.region.cloudapp.azurestack.corp.contoso.com.В поле "Имя сайта" введите
Default Web Siteили имя, используемое в IIS на целевом сервере.В поле Имя пользователя введите имя пользователя для компьютера.
В поле Пароль введите пароль для этого компьютера.
В качестве URL-адреса назначения введите URL-адрес сайта, например
http://mywebapp.region.cloudapp.azurestack.corp.contoso.com.
Выберите Проверить подключение, чтобы проверить конфигурацию веб-развертывания. Нажмите кнопку Далее.
Для параметра Конфигурация выберите значение Выпуск.
Задайте для целевой платформызначение net5.0.
Задайте режим развертывания как зависящий от платформы.
Задайте целевую среду выполнения как win-x64.
Щелкните Сохранить.
Нажмите кнопку Опубликовать. В Visual Studio должны появиться следующие выходные данные:
Publish Succeeded. Web App was published successfully http://mywebapp.region.cloudapp.azurestack.corp.contoso.com/ ========== Build: 1 succeeded, 0 failed, 0 up-to-date, 0 skipped ========== ========== Publish: 1 succeeded, 0 failed, 0 skipped ==========Перейдите на новый сервер. Вы увидите запущенное веб-приложение.
mywebapp.region.cloudapp.azurestack.corp.contoso.com
Дальнейшие действия
- Узнайте, как настроить среду разработки в Azure Stack Hub.
- Дополнительные сведения о распространенных сценариях развертывания IaaS для Azure Stack Hub см. здесь.
- Дополнительные сведения о языке программирования C# и поиске дополнительных ресурсов для C#см. в руководстве по C#.