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


Краткое руководство. Развертывание файла артефакта в приложениях контейнеров Azure

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

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

Снимок экрана: ответ конечной точки API альбомов.

Необходимые компоненты

Требование Instructions
Учетная запись Azure Если у вас нет учетной записи, создайте бесплатную учетную запись. Чтобы продолжить, вам потребуется разрешение участника или владельца подписки Azure.

Дополнительные сведения см. в статье "Назначение ролей Azure" с помощью портал Azure.
Учетная запись GitHub Получите его бесплатно.
git Установка Git
Azure CLI Установите интерфейс командной строки Azure.
Java Установка JDK, рекомендация 17 или более поздней версии
Maven Установите Maven.

Настройка

Чтобы войти в Azure из ИНТЕРФЕЙСА командной строки, выполните следующую команду и следуйте инструкциям, чтобы завершить процесс проверки подлинности.

az login

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

az upgrade

Затем установите или обновите расширение "Приложения контейнеров Azure" для интерфейса командной строки.

Если при выполнении az containerapp команд в Azure CLI или командлетах из модуля Azure PowerShell возникают ошибки о отсутствующих параметрах Az.App , убедитесь, что установлена последняя версия расширения "Приложения контейнеров Azure".

az extension add --name containerapp --upgrade

Примечание.

Начиная с мая 2024 г. расширения Azure CLI больше не поддерживают предварительные версии функций по умолчанию. Чтобы получить доступ к функциям предварительной версии контейнерных приложений, установите расширение "Приложения контейнеров" с --allow-preview trueпомощью .

az extension add --name containerapp --upgrade --allow-preview true

Теперь, когда установлено текущее расширение или модуль, зарегистрируйте Microsoft.App пространства имен и Microsoft.OperationalInsights пространств имен.

Примечание.

Ресурсы Контейнеров приложений Azure перенесены из пространства имен Microsoft.Web в пространство имен Microsoft.App. Дополнительные сведения см. в статье о миграции пространства имен из Microsoft.Web в Microsoft.App в марте 2022 г..

az provider register --namespace Microsoft.App
az provider register --namespace Microsoft.OperationalInsights

Создание переменной среды

После завершения настройки Azure CLI вы можете определить переменные среды, которые используются в этой статье.

Определите следующие переменные в оболочке Bash.

RESOURCE_GROUP="album-containerapps"
LOCATION="canadacentral"
ENVIRONMENT="env-album-containerapps"
API_NAME="album-api"
SUBSCRIPTION=<YOUR_SUBSCRIPTION_ID>

При необходимости можно запросить идентификатор подписки.

az account list --output table

Подготовка репозитория GitHub

Начните с клонирования примера репозитория.

Используйте следующую команду Git, чтобы клонировать пример приложения в папку code-to-cloud :

git clone https://github.com/azure-samples/containerapps-albumapi-java code-to-cloud
cd code-to-cloud

Создание JAR-файла

Примечание.

Пример Java поддерживает только сборку Maven, которая приводит к исполняемому JAR-файлу. Сборка использует параметры по умолчанию, так как передача переменных среды не поддерживается.

Создайте проект с помощью Maven.

mvn clean package -DskipTests

Локальный запуск проекта

java -jar target\containerapps-albumapi-java-0.0.1-SNAPSHOT.jar

Чтобы проверить выполнение приложения, откройте браузер и перейдите к ней http://localhost:8080/albums. Страница возвращает список объектов JSON.

Развертывание артефакта

Создайте и разверните первое приложение контейнера из локального JAR-файла с containerapp up помощью команды.

Команда:

  • Создает группу ресурсов
  • Создает Реестр контейнеров Azure
  • Создает образ контейнера и отправляет его в реестр.
  • Создает среду "Приложения контейнеров" с рабочей областью Log Analytics
  • Создает и развертывает приложение-контейнер с помощью общедоступного образа контейнера

Команда up использует файл Docker в корне репозитория для создания образа контейнера. Инструкция EXPOSE в файле Docker определяет целевой порт. Однако файл Docker не требуется для создания приложения-контейнера.

Примечание.

Примечание. При использовании containerapp up в сочетании с базой кода без Docker используйте --location параметр, чтобы приложение выполнялось в расположении, отличном от восточной части США.

az containerapp up \
  --name $API_NAME \
  --resource-group $RESOURCE_GROUP \
  --location $LOCATION \
  --environment $ENVIRONMENT \
  --artifact ./target/containerapps-albumapi-java-0.0.1-SNAPSHOT.jar \
  --ingress external \
  --target-port 8080 \
  --subscription $SUBSCRIPTION

Проверка развертывания

Скопируйте полное доменное имя в веб-браузер. В веб-браузере перейдите к конечной точке /albums полного доменного имени.

Снимок экрана: ответ конечной точки API альбомов.

Развертывание WAR-файла

Вы также можете развернуть приложение-контейнер из WAR-файла.

Очистка ресурсов

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

Выполните следующие действия, чтобы удалить созданные ресурсы:

az group delete \
  --resource-group $RESOURCE_GROUP

Совет

Возникли проблемы? Сообщите о них в репозитории Azure Container Apps на GitHub.

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