Краткое руководство. Развертывание файла артефакта в приложениях контейнеров Azure (предварительная версия)
Из этого краткого руководства вы узнаете, как развернуть приложение-контейнер из предварительно созданного файла артефакта. Пример в этой статье развертывает приложение Java с помощью JAR-файла, который включает в себя файл манифеста для Java. Ваша задача — создать серверную веб-службу 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
пространств имен.
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
полного доменного имени.
Развертывание WAR-файла
Вы также можете развернуть приложение-контейнер из WAR-файла.
Очистка ресурсов
Если вы не собираетесь продолжать использовать это приложение, можете удалить экземпляр Azure Container Apps и все связанные службы, удалив группу ресурсов.
Выполните следующие действия, чтобы удалить созданные ресурсы:
az group delete \
--resource-group $RESOURCE_GROUP
Совет
Возникли проблемы? Сообщите о них в репозитории Azure Container Apps на GitHub.