Запуск пользовательского контейнера в Azure
Служба приложений Azure предоставляет предопределенные стеки приложений на платформе Windows, например ASP.NET или Node.js, выполняющиеся в IIS. Однако предварительно настроенные стеки приложений блокируют операционную систему и мешают доступу на более низком уровне. Пользовательские контейнеры Windows не налагают таких ограничений и позволяют разработчикам полностью настраивать контейнеры и предоставлять контейнерным приложениям полный доступ к функциям Windows.
В этом кратком руководстве показано, как развернуть приложение ASP.NET в образе Windows в Реестр контейнеров Azure из Visual Studio. Приложение можно запустить в пользовательском контейнере в Службе приложений Azure.
Для работы с этим кратким руководством вам понадобится:
- Установка Docker для Windows
- Переключение Docker для выполнения контейнеров Windows
- Установите Visual Studio 2022, а также следующие рабочие нагрузки: ASP.NET и веб-разработка и разработка Azure. В Visual Studio 2022 Community убедитесь, что выбран компонент Шаблоны элементов и проект .NET Framework с рабочей нагрузкой ASP.NET и веб-разработка. Если вы уже установили Visual Studio 2022:
- Установите последние обновления для Visual Studio, выбрав Справка>Проверить обновления.
- Добавьте рабочие нагрузки в Visual Studio, выбрав Инструменты>Получить средства и компоненты.
1. Создание веб-приложения ASP.NET
Создайте веб-приложение ASP.NET, сделав следующее:
Откройте Visual Studio и выберите Создать проект.
В окне Создание нового проекта найдите и выберите Веб-приложение ASP.NET (.NET Framework) для C#, а затем нажмите кнопку Далее.
На вкладке Настройка нового проекта в разделе Имя проекта назовите приложение myfirstazurewebapp. В разделе Платформа выберите .NET Framework 4.8 и щелкните Создать.
Вы можете развернуть любой тип веб-приложения ASP.NET в Azure. В рамках этого краткого руководства выберите шаблон MVC.
В разделе Аутентификация выберите Нет. В разделе Дополнительно выберите Поддержка Docker и снимите флажок Настроить для HTTPS. Нажмите кнопку создания.
Если файл Dockerfile не открылся автоматически, откройте его в обозревателе решений.
Вам потребуется поддерживаемый родительский образ. Измените родительский образ, заменив строку
FROM
приведенным ниже кодом. Затем сохраните файл.FROM mcr.microsoft.com/dotnet/framework/aspnet:4.8-windowsservercore-ltsc2019
В меню Visual Studio выберите Отладка>Запустить без отладки, чтобы запустить приложение локально.
2. Публикация в Реестре контейнеров Azure
Щелкните правой кнопкой мыши проект myfirstazurewebapp в обозревателе решений и выберите Опубликовать.
На вкладке Целевой объект выберите Реестр контейнеров Docker и щелкните Далее.
На вкладке Определенный целевой объект выберите Реестр контейнеров Azure и щелкните Далее.
Убедитесь, что на вкладке Публикациявыбрана правильная подписка. На вкладке Реестры контейнеров нажмите кнопку +, чтобы создать новый Реестр контейнеров Azure.
Убедитесь, что на вкладке Созданиевыбрана правильная подписка. В разделе Группа ресурсов выберите Новая, введите в качестве имени myResourceGroup и щелкните ОК. В разделе Номер SKU выберите Базовый. В разделе Расположение реестра выберите расположение реестра и щелкните Создать.
На вкладке Публикация в разделе Реестр контейнеров выберите созданный реестр и щелкните Готово.
Дождитесь завершения развертывания. Теперь на странице Публикация отображается имя репозитория. Нажмите кнопку Копировать, чтобы скопировать имя репозитория для последующего использования.
3. Создание пользовательского контейнера Windows
Войдите на портал Azure.
Выберите Создать ресурс в верхнем левом углу окна портала Azure.
В разделе Популярные службы в подразделе Веб-приложение выберите Cоздать.
В окне Создание веб-приложения выберите подписку и группу ресурсов. При необходимости можно создать новую группу ресурсов.
Укажите имя приложения, например win-container-demo. Для параметра Публикация выберите вариант контейнер Docker, а для параметра Операционная система — значение Windows. Нажмите кнопку Далее: Docker , чтобы продолжить.
В поле Источник образа выберите Docker Hub, а для параметра Образ и тег укажите имя репозитория, скопированное в разделе Публикация в Реестре контейнеров Azure.
Если у вас есть пользовательский образ для веб-приложения в другом расположении, например реестре контейнеров Azure или любом другом частном репозитории, его можно настроить здесь. Чтобы продолжить, выберите Просмотр и создание.
Проверьте все сведения и щелкните Создать, затем подождите, пока Azure создаст необходимые ресурсы.
4. Переход к пользовательскому контейнеру
По завершении операции Azure отображается окно уведомления.
Щелкните Перейти к ресурсу.
В обзоре этого ресурса перейдите по ссылке рядом с URL-адресом.
В браузере откроется следующая страница:
Подождите несколько минут и повторите попытку, пока не отобразится домашняя страница ASP.NET по умолчанию.
Поздравляем! Вы запустили свой первый пользовательский контейнер Windows в службе приложений Azure.
5. Просмотр журналов запуска контейнера
Загрузка контейнера Windows может занять некоторое время. Чтобы просмотреть ход выполнения, перейдите по следующему URL-адресу, заменив <app_name>> именем приложения.
https://<app_name>.scm.azurewebsites.net/api/logstream
Потоковые журналы выглядят следующим образом:
2018-07-27T12:03:11 Welcome, you are now connected to log-streaming service.
27/07/2018 12:04:10.978 INFO - Site: win-container-demo - Start container succeeded. Container: facbf6cb214de86e58557a6d073396f640bbe2fdec88f8368695c8d1331fc94b
27/07/2018 12:04:16.767 INFO - Site: win-container-demo - Container start complete
27/07/2018 12:05:05.017 INFO - Site: win-container-demo - Container start complete
27/07/2018 12:05:05.020 INFO - Site: win-container-demo - Container started successfully
6. Обновление в локальной среде и повторное развертывание
В Visual Studio в обозревателе решений откройте Представления>Главная страница>Index.cshtml.
Найдите тег HTML
<div class="jumbotron">
в верхней области и замените его следующим кодом:<div class="jumbotron"> <h1>ASP.NET in Azure!</h1> <p class="lead">This is a simple app that we've built that demonstrates how to deploy a .NET app to Azure App Service.</p> </div>
Чтобы выполнить повторное развертывание в Azure, щелкните правой кнопкой мыши проект myfirstazurewebapp в обозревателе решений и выберите Опубликовать.
На странице публикации выберите Опубликовать и дождитесь завершения публикации.
Чтобы указать службе приложений извлечь новый образ из Docker Hub, перезапустите приложение. На странице приложения на портале щелкните Перезапустить>Да.
Снова перейдите к пользовательскому контейнеру. После обновления веб-страницы сначала должна появиться страница "Starting up" (Запуск) приложения, а через несколько минут должна отобразиться обновленная веб-страница.
7. Очистка ресурсов
На предыдущем шаге вы создали ресурсы Azure в группе ресурсов. Если вы считаете, что в будущем эти ресурсы вам не понадобятся, их можно удалить, удалив группу ресурсов.
В меню или на странице Главная портала Azure выберите Группы ресурсов. Затем на странице Группы ресурсов выберите myResourceGroup.
На странице myResourceGroup убедитесь, что перечислены те ресурсы, которые нужно удалить.
Выберите Удалить группу ресурсов, введите myResourceGroup в текстовое поле для подтверждения и щелкните Удалить.
Следующие шаги
Служба приложений Azure в Linux предоставляет предопределенные стеки приложений на платформе Linux с поддержкой определенных языков, например, .NET, PHP, Node.js и др. Вы также можете использовать пользовательский образ Docker для запуска веб-приложения в стеке приложений, который еще не определен в Azure. В этом кратком руководстве показано, как развернуть образ из Реестра контейнеров Azure (ACR) в Службе приложений.
Примечание.
Сведения о запуске контейнерных приложений в бессерверной среде см. в статье Контейнеры приложений.
Для работы с этим кратким руководством вам понадобится:
- учетная запись Azure;
- Docker
- Visual Studio Code
- Расширение Службы приложений Azure для VS Code. Это расширение можно использовать для создания и развертывания веб-приложений Linux на платформе Azure в рамках модели "платформа как служба" (PaaS), а также для управления ими.
- Расширение Docker для VS Code. С помощью этого расширения можно упростить управление локальными образами и командами Docker, а также развернуть созданные образы приложений в Azure.
1. Создание реестра контейнеров
В этом кратком руководстве в качестве реестра используется Реестр контейнеров Azure. Вы можете использовать другие реестры, но последовательность действий может быть немного другой.
Создайте реестр контейнеров с помощью инструкций из краткого руководства по созданию частного реестра контейнеров с помощью портала Microsoft Azure.
Внимание
При создании реестра контейнеров Azure не забудьте установить для параметра Администратор значение Включить. Его также можно установить из раздела Ключи доступа на странице реестра на портале Azure. Этот параметр необходим для доступа к Службе приложений. Сведения об управляемом удостоверении см. в учебнике по развертыванию из ACR.
2. Вход
Запустите Visual Studio Code.
Выберите логотип Azure на панели действий, перейдите в обозреватель СЛУЖБЫ ПРИЛОЖЕНИЙ, а затем выберите Войти в Azure и следуйте инструкциям.
Убедитесь, что в строке состояния внизу указан ваш адрес электронной почты учетной записи Azure. В обозревателе СЛУЖБЫ ПРИЛОЖЕНИЙ должна отобразиться подписка.
На панели действий выберите логотип Docker. Убедитесь, что в обозревателе РЕЕСТРОВ отображается созданный реестр контейнеров.
3. Проверка предварительных требований
Убедитесь, что у вас установлен и работает Docker. Следующая команда отобразит версию Docker, если она выполняется.
docker --version
4. Создание и сборка образа
- В Visual Studio Code откройте пустую папку и добавьте файл
Dockerfile
. В Dockerfile вставьте содержимое в зависимости от требуемой языковой платформы:
FROM mcr.microsoft.com/appsvc/dotnetcore:lts
ENV PORT 8080
EXPOSE 8080
ENV ASPNETCORE_URLS "http://*:${PORT}"
ENTRYPOINT ["dotnet", "/defaulthome/hostingstart/hostingstart.dll"]
В этом файле Dockerfile родительский образ является одним из встроенных контейнеров .NET Службы приложений Azure.
Откройте палитру команди введите Образы Docker: сборка образа. Нажмите клавишу Ввод, чтобы выполнить эту команду.
В поле тега образа укажите нужный тег в следующем формате:
<acr-name>.azurecr.io/<image-name>:<tag>
, где<acr-name>
— это имя созданного вами реестра контейнеров. Нажмите ВВОД.Когда сборка образа завершится, щелкните Обновить в верхней части обозревателя ОБРАЗОВ и убедитесь, что образ успешно создан.
5. Развертывание в реестре контейнеров
На панели действий щелкните значок Docker. В обозревателе образов найдите только что созданный образ.
Разверните образ, щелкните правой кнопкой мыши нужный тег и выберите Отправить.
Убедитесь, что тег образа начинается с
<acr-name>.azurecr.io
, и нажмите клавишу Ввод.Когда Visual Studio Code закончит передачу образа в реестр контейнеров, щелкните Обновить в верхней части обозревателя РЕЕСТРОВ и убедитесь, что образ успешно отправлен.
6. Развертывание в Службе приложений
- В обозревателе реестров разверните образ, щелкните тег правой кнопкой мыши и выберите Развернуть образ в Службе приложений Azure.
- Следуя инструкциям на экране, выберите подписку, глобально уникальное имя приложения, группу ресурсов и план Службы приложений. Выберите ценовую категорию B1 Basic (B1 Базовый) и регион.
После развертывания приложение будет доступно по адресу http://<app-name>.azurewebsites.net
.
Группа ресурсов — это именованная коллекция всех ресурсов вашего приложения в Azure. Например, группа ресурсов может содержать ссылку на веб-сайт, базу данных и функцию Azure.
План Службы приложений определяет физические ресурсы, которые будут использоваться для размещения веб-сайта. В этом кратком руководстве используется план размещения Базовый в инфраструктуре Linux. Это означает, что сайт будет размещаться на компьютере Linux вместе с другими веб-сайтами. Если начать работу с планом Базовый, можно использовать портал Azure для увеличения масштаба, чтобы ваш сайт был единственным на компьютере. Сведения о ценах см на странице цен на Службу приложений.
7. Просмотр веб-сайта
На панели вывода отображается состояние операций развертывания. После завершения операции щелкните Открыть сайт во всплывающем уведомлении, чтобы открыть сайт в браузере.
8. Очистка ресурсов
На предыдущем шаге вы создали ресурсы Azure в группе ресурсов. Если вы считаете, что в будущем эти ресурсы вам не понадобятся, их можно удалить, удалив группу ресурсов.
В меню или на странице Главная портала Azure выберите Группы ресурсов. Затем на странице Группы ресурсов выберите myResourceGroup.
На странице myResourceGroup убедитесь, что перечислены те ресурсы, которые нужно удалить.
Выберите Удалить группу ресурсов, введите myResourceGroup в текстовое поле для подтверждения и щелкните Удалить.
Следующие шаги
Поздравляем, вы успешно завершили работу с этим кратким руководством.
Приложение Службы приложений Azure извлекает образ из реестра контейнеров при каждом запуске. При перестроении образа необходимо просто отправить его в реестр контейнеров, и приложение будет получать при перезапуске его обновленную версию. Чтобы проинструктировать приложение немедленно извлечь обновленный образ, перезапустите его.
Другие расширения Azure:
- Azure Cosmos DB
- Функции Azure
- Средства интерфейса командной строки Azure
- Средства Azure Resource Manager
- Пакет расширений средств Azure включает все описанные выше расширения.
Служба приложений Azure в Linux предоставляет предопределенные стеки приложений на платформе Linux с поддержкой определенных языков, например, .NET, PHP, Node.js и др. Вы также можете использовать пользовательский образ Docker для запуска веб-приложения в стеке приложений, который еще не определен в Azure. В этом кратком руководстве показано, как развернуть образ из Реестра контейнеров Azure в Службе приложений Azure.
Примечание.
Сведения о запуске контейнерных приложений в бессерверной среде см. в статье Контейнеры приложений.
Для работы с этим кратким руководством вам понадобится:
1. Клонирование репозитория с примерами
Клонируйте пример приложения .NET 6.0 с помощью следующей команды:
git clone https://github.com/Azure-Samples/dotnetcore-docs-hello-world.git
2. Отправка образа в Реестр контейнеров Azure
Убедитесь, что вы находитесь в корневой папке клонированного репозитория. Этот репозиторий содержит файл Dockerfile.linux.
Войдите в интерфейс командной строки Azure.
az login
Войдите в Реестр контейнеров Azure.
az acr login -n <your_registry_name>
Создание образа контейнера. Мы назвали образ dotnetcore-docs-hello-world-linux.
docker build -f Dockerfile.linux -t <your_registry_name>.azurecr.io/dotnetcore-docs-hello-world-linux .
Отправьте образ контейнера в Реестр контейнеров Azure.
docker push <your_registry_name>.azurecr.io/dotnetcore-docs-hello-world-linux:latest
Примечание.
Dockerfile выбирает порт 80 автоматически. Дополнительные сведения о настройке контейнера см. в статье Настройка пользовательского контейнера.
3. Развертывание в Azure
Войдите на портал Azure.
Войдите на портал Azure.
Создание ресурсов Azure
В поле поиска введите службы приложений. В разделе Службы выберите Службы приложений.
На странице Службы приложений выберите Создать.
На вкладке Основные сведения в разделе Сведения о проекте убедитесь, что выбрана правильная подписка, и при необходимости щелкните Создать группу ресурсов. Введите myResourceGroup в качестве имени.
В разделе Сведения об экземпляре введите глобально уникальное имя веб-приложения и щелкните Контейнер Docker. Выберите Linux в поле Операционная система. Выберите регион для обслуживания приложения.
В разделе План Службы приложений выберите Создать план Службы приложений. Введите myAppServicePlan в качестве имени. Чтобы перейти на уровень "Бесплатный", выберите Изменить размер, откройте вкладку Разработка и тестирование, выберите F1 и в нижней части страницы нажмите кнопку Применить.
Нажмите кнопку Далее: Docker > в нижней части страницы.
На вкладке Docker выберите Один контейнер в разделе Параметры и Реестр контейнеров Azure в поле Источник образа. В разделе Параметры Реестра контейнеров Azure задайте следующие значения:
- Реестр: выберите Реестр контейнеров Azure.
- Образ: выберите dotnetcore-docs-hello-world-linux.
- Тег: выберите последняя версия.
В нижней части страницы нажмите кнопку Просмотр и создание.
После выполнения проверки нажмите кнопку Создать в нижней части страницы.
По завершении развертывания нажмите кнопку Перейти к ресурсу.
4. Переход в приложение
Найдите развернутое приложение в веб-браузере по URL-адресу http://<app-name>.azurewebsites.net
.
5. Очистка ресурсов
На предыдущем шаге вы создали ресурсы Azure в группе ресурсов. Если вы считаете, что в будущем эти ресурсы вам не понадобятся, их можно удалить, удалив группу ресурсов.
В меню или на странице Главная портала Azure выберите Группы ресурсов. Затем на странице Группы ресурсов выберите myResourceGroup.
На странице myResourceGroup убедитесь, что перечислены те ресурсы, которые нужно удалить.
Выберите Удалить группу ресурсов, введите myResourceGroup в текстовое поле для подтверждения и щелкните Удалить.
Следующие шаги
Поздравляем, вы успешно завершили работу с этим кратким руководством.
Приложение Службы приложений Azure извлекает образ из реестра контейнеров при каждом запуске. При перестроении образа необходимо просто отправить его в реестр контейнеров, и приложение будет получать при перезапуске его обновленную версию. Чтобы проинструктировать приложение немедленно извлечь обновленный образ, перезапустите его.
Служба приложений Azure предоставляет предопределенные стеки приложений на платформе Windows, например ASP.NET или Node.js, выполняющиеся в IIS. Однако предварительно настроенные стеки приложений блокируют операционную систему и мешают доступу на более низком уровне. Пользовательские контейнеры Windows не налагают таких ограничений и позволяют разработчикам полностью настраивать контейнеры и предоставлять контейнерным приложениям полный доступ к функциям Windows.
В этом кратком руководстве показано, как развернуть приложение ASP.NET в образ Windows из Реестра контейнеров Azure в Службе приложений Azure.
Для работы с этим кратким руководством вам понадобится:
- учетная запись Azure;
- Реестр контейнеров Azure
- Azure CLI
- Установка Docker для Windows
- Переключение Docker для выполнения контейнеров Windows
1. Клонирование репозитория с примерами
Клонируйте пример приложения .NET 6.0 с помощью следующей команды:
git clone https://github.com/Azure-Samples/dotnetcore-docs-hello-world.git
2. Отправка образа в Реестр контейнеров Azure
Убедитесь, что вы находитесь в корневой папке клонированного репозитория. Этот репозиторий содержит файл Dockerfile.windows. Мы будем использовать Windows Nano Server Long Term Servicing Channel (LTSC) 2022 в качестве базовой операционной системы, явно вызывая базу Windows.
Примечание.
Хотя это контейнер Windows, в пути все равно нужно использовать косые черты. Дополнительные сведения см. в разделе Создание Dockerfile.
Войдите в интерфейс командной строки Azure.
az login
Войдите в Реестр контейнеров Azure.
az acr login -n <your_registry_name>
Создание образа контейнера. Мы назвали образ dotnetcore-docs-hello-world-windows.
docker build -f Dockerfile.windows -t <your_registry_name>.azurecr.io/dotnetcore-docs-hello-world-windows .
Отправьте образ контейнера в Реестр контейнеров Azure.
docker push <your_registry_name>.azurecr.io/dotnetcore-docs-hello-world-windows:latest
Примечание.
Dockerfile выбирает порт 80 автоматически. Дополнительные сведения о настройке контейнера см. в статье Настройка пользовательского контейнера.
3. Развертывание в Azure
Войдите на портал Azure.
Войдите на портал Azure.
Создание ресурсов Azure
В поле поиска введите службы приложений. В разделе Службы выберите Службы приложений.
На странице Службы приложений выберите Создать.
На вкладке Основные сведения в разделе Сведения о проекте убедитесь, что выбрана правильная подписка, и при необходимости щелкните Создать группу ресурсов. Введите myResourceGroup в качестве имени.
В разделе Сведения об экземпляре введите глобально уникальное имя веб-приложения и щелкните Контейнер Docker. Выберите Windows в поле Операционная система. Выберите регион для обслуживания приложения.
В разделе План Службы приложений выберите Создать план Службы приложений. Введите myAppServicePlan в качестве имени. Чтобы перейти на уровень "Бесплатный", выберите Изменить размер, откройте вкладку Разработка и тестирование, выберите P1v3 и в нижней части страницы нажмите кнопку Применить.
Нажмите кнопку Далее: Docker > в нижней части страницы.
На вкладке Docker выберите Реестр контейнеров Azure в поле Источник образа. В разделе Параметры Реестра контейнеров Azure задайте следующие значения:
- Реестр: выберите Реестр контейнеров Azure.
- Образ: выберите dotnetcore-docs-hello-world-windows.
- Тег: выберите последняя версия.
В нижней части страницы нажмите кнопку Просмотр и создание.
После выполнения проверки нажмите кнопку Создать в нижней части страницы.
По завершении развертывания нажмите кнопку Перейти к ресурсу.
4. Переход в приложение
Найдите развернутое приложение в веб-браузере по URL-адресу http://<app-name>.azurewebsites.net
.
Обратите внимание, что операционная система узла отображается в нижнем колонтитуле, указывая на то, что мы работаем в контейнере Windows.
5. Очистка ресурсов
На предыдущем шаге вы создали ресурсы Azure в группе ресурсов. Если вы считаете, что в будущем эти ресурсы вам не понадобятся, их можно удалить, удалив группу ресурсов.
В меню или на странице Главная портала Azure выберите Группы ресурсов. Затем на странице Группы ресурсов выберите myResourceGroup.
На странице myResourceGroup убедитесь, что перечислены те ресурсы, которые нужно удалить.
Выберите Удалить группу ресурсов, введите myResourceGroup в текстовое поле для подтверждения и щелкните Удалить.
Следующие шаги
Поздравляем, вы успешно завершили работу с этим кратким руководством.
Приложение Службы приложений Azure извлекает образ из реестра контейнеров при каждом запуске. При перестроении образа необходимо просто отправить его в реестр контейнеров, и приложение будет получать при перезапуске его обновленную версию. Чтобы проинструктировать приложение немедленно извлечь обновленный образ, перезапустите его.
Служба приложений Azure предоставляет предопределенные стеки приложений на платформе Windows, например ASP.NET или Node.js, выполняющиеся в IIS. Однако предварительно настроенные стеки приложений блокируют операционную систему и мешают доступу на более низком уровне. Пользовательские контейнеры Windows не налагают таких ограничений и позволяют разработчикам полностью настраивать контейнеры и предоставлять контейнерным приложениям полный доступ к функциям Windows.
В этом кратком руководстве показано, как развернуть приложение ASP.NET в образ Windows из Реестра артефактов (Майкрософт) в Службе приложений Azure.
Для работы с этим кратким руководством вам понадобится:
- Учетная запись Azure с активной подпиской. Создайте учетную запись бесплатно .
- Azure PowerShell.
1. Подключение к Azure
Войдите в учетную запись Azure с помощью команды Connect-AzAccount
и выполните следующий запрос:
Connect-AzAccount
2. Создание группы ресурсов
Создайте группу ресурсов с помощью команды New-AzResourceGroup. Группа ресурсов Azure является логическим контейнером, в котором происходит развертывание ресурсов Azure и управление ими.
В следующем примере создается группа ресурсов с именем myResourceGroup в расположении eastus. Чтобы просмотреть все поддерживаемые расположения для службы приложений, выполните команду Get-AzLocation
.
New-AzResourceGroup -Name myResourceGroup -Location eastus
По завершении команда возвращает Login Succeeded
.
3. Создание плана Службы приложений
Создайте новый план Службы приложений с помощью команды New-AzAppServicePlan.
В следующем примере создается план Службы приложений с именем myAppServicePlan
и ценовой категорией PremiumV3 (-Tier PremiumV3
). Параметр -HyperV
позволяет указать контейнер Windows.
New-AzAppServicePlan -Name myAppServicePlan -Location eastus -ResourceGroupName myResourceGroup -Tier PremiumV3 -HyperV
4. Создание веб-приложения
Создайте приложение с помощью команды New-AzWebApp:
New-AzWebApp -Name myWebApp -AppServicePlan myAppServicePlan -Location eastus -ResourceGroupName myResourceGroup -ContainerImageName mcr.microsoft.com/azure-app-service/windows/parkingpage:latest
- Параметр Name позволяет указать имя веб-приложения.
- Параметр AppServicePlan позволяет указать имя плана Службы приложений.
- Параметр Location позволяет указать расположение.
- Параметр ResourceGroupName позволяет указать имя группы ресурсов.
- Параметр ContainerImageName позволяет указать имя образа контейнера и необязательный тег.
Выполнение команды может занять несколько минут.
5. Переход в приложение
Найдите развернутое приложение в веб-браузере по URL-адресу http://<app-name>.azurewebsites.net
.
6. Очистка ресурсов
Удалите группу ресурсов с помощью команды Remove-AzResourceGroup.
Remove-AzResourceGroup myResourceGroup
Следующие шаги
Поздравляем, вы успешно завершили работу с этим кратким руководством.
Приложение Службы приложений Azure извлекает образ из реестра контейнеров при каждом запуске. При перестроении образа необходимо просто отправить его в реестр контейнеров, и приложение будет получать при перезапуске его обновленную версию. Чтобы проинструктировать приложение немедленно извлечь обновленный образ, перезапустите его.
Служба приложений Azure предоставляет предопределенные стеки приложений на платформе Windows, например ASP.NET или Node.js, выполняющиеся в IIS. Однако предварительно настроенные стеки приложений блокируют операционную систему и мешают доступу на более низком уровне. Пользовательские контейнеры Windows не налагают таких ограничений и позволяют разработчикам полностью настраивать контейнеры и предоставлять контейнерным приложениям полный доступ к функциям Windows.
В этом кратком руководстве показано, как развернуть приложение ASP.NET в образ Windows из Реестра артефактов (Майкрософт) в Службе приложений Azure.
Для работы с этим кратким руководством вам понадобится:
- Учетная запись Azure с активной подпиской. Создайте учетную запись бесплатно .
- Azure CLI
1. Подключение к Azure
Войдите в учетную запись Azure с помощью команды az login
и выполните следующий запрос:
az login
2. Создание группы ресурсов
Создайте группу ресурсов с помощью команды az group create
. Группа ресурсов Azure является логическим контейнером, в котором происходит развертывание ресурсов Azure и управление ими.
В следующем примере создается группа ресурсов с именем myResourceGroup в расположении eastus. Чтобы просмотреть все поддерживаемые расположения для службы приложений, выполните команду az appservice list-locations
.
az group create --name myResourceGroup --location eastus
3. Создание плана Службы приложений
Создайте план Службы приложений в группе ресурсов с помощью команды az appservice plan create
.
В следующем примере создается план Службы приложений с именем myAppServicePlan
и ценовой категорией P1V3 (--sku P1V3
).
az appservice plan create --resource-group myResourceGroup --location eastus --name myAppServicePlan --hyper-v --sku p1v3
Примечание.
Если появится ошибка The behavior of this command has been altered by the following extension: appservice-kube (Поведение этой команды было изменено следующим расширением: appservice-kube), удалите расширение appservice-kube
.
4. Создание веб-приложения
Создайте пользовательское контейнерное веб-приложение в рамках плана Службы приложений myAppServicePlan
с помощью команды az webapp create. Обязательно замените myContainerApp уникальным именем приложения (допустимые символы: a-z
, 0-9
и -
).
az webapp create --name myContainerApp --plan myAppServicePlan --location eastus --resource-group myResourceGroup --deployment-container-image-name mcr.microsoft.com/azure-app-service/windows/parkingpage:latest
- Параметр Name позволяет указать имя веб-приложения.
- Параметр AppServicePlan позволяет указать имя плана Службы приложений.
- Параметр Location позволяет указать расположение.
- Параметр ResourceGroupName позволяет указать имя группы ресурсов.
- Параметр deployment-container-image-name позволяет указать имя образа контейнера и необязательный тег.
5. Переход в приложение
Найдите развернутое приложение в веб-браузере по URL-адресу http://<app-name>.azurewebsites.net
.
6. Очистка ресурсов
Удалите группу ресурсов с помощью команды az group delete:
az group delete --no-wait --name <resource_group>
Следующие шаги
Поздравляем, вы успешно завершили работу с этим кратким руководством.
Приложение Службы приложений Azure извлекает образ из реестра контейнеров при каждом запуске. При перестроении образа необходимо просто отправить его в реестр контейнеров, и приложение будет получать при перезапуске его обновленную версию. Чтобы проинструктировать приложение немедленно извлечь обновленный образ, перезапустите его.