Compartir vía


Inicio rápido: implementación de un archivo de artefacto en Azure Container Apps (versión preliminar)

En este inicio rápido, aprenderá a implementar una aplicación de contenedor desde un archivo de artefacto pregenerado. En el ejemplo siguiente se implementa una aplicación Java mediante un archivo JAR, que incluye un archivo de manifiesto específico de Java. Su trabajo consiste en crear un servicio de API web de back-end que devuelva una colección estática de álbumes de música. Después de completar este inicio rápido, puede continuar con Comunicación entre microservicios para aprender a implementar una aplicación de front-end que llama a la API.

En la captura de pantalla siguiente, se muestra la salida del servicio de la API de álbumes que implementaste.

Captura de pantalla de la respuesta del punto de conexión de la API de álbumes.

Requisitos previos

Requisito Instructions
Cuenta de Azure Si no tiene ninguna cuenta, cree una gratuita. Necesita el permiso Colaborador o Propietario en la suscripción de Azure para continuar.

Consulte Asignación de roles de Azure mediante Azure Portal para obtener más información.
Cuenta de GitHub Obtenga una gratis.
git Instalación de git
Azure CLI Instale la CLI de Azure.
Java Instale el JDK, se recomienda la versión 17 o posterior.
Maven Instalar el Maven.

Instalación

Para iniciar sesión en Azure desde la CLI, ejecute el siguiente comando y siga las indicaciones para completar el proceso de autenticación.

az login

Para asegurarse de que ejecuta la versión más reciente de la CLI, ejecute el comando de actualización.

az upgrade

Luego, instale o actualice la extensión de Azure Container Apps para la CLI.

Si recibe errores sobre los parámetros que faltan al ejecutar az containerapp comandos en la CLI de Azure o cmdlets del Az.App módulo en Azure PowerShell, asegúrese de que tiene instalada la versión más reciente de la extensión Azure Container Apps.

az extension add --name containerapp --upgrade

Nota:

A partir de mayo de 2024, las extensiones de la CLI de Azure ya no habilitan las características en versión preliminar de forma predeterminada. Para acceder a las características de la versión preliminar de Container Apps, instale la extensión Container Apps con --allow-preview true.

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

Ahora que la extensión o módulo actualizado está instalado, registre los espacios de nombre Microsoft.App y Microsoft.OperationalInsights.

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

Creación de variables de entorno

Ahora que la configuración de la CLI de Azure está completa, puede definir las variables de entorno que se usan en este artículo.

Defina las siguientes variables en el shell de Bash.

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

Si es necesario, puede consultar su Id. de suscripción.

az account list --output table

Preparación del repositorio de GitHub

Comience clonando el repositorio de muestras.

Use el siguiente comando git para clonar la aplicación de muestra en la carpeta código a nube:

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

Compilación de un archivo JAR

Nota:

La muestra Java solo admite una compilación Maven, que da como resultado un archivo ejecutable JAR. La compilación usa la configuración predeterminada, ya que no se admite el paso de variables de entorno.

Compile el proyecto con Maven.

mvn clean package -DskipTests

Ejecución del proyecto de forma local

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

Para comprobar que la aplicación se está ejecutando, abra un explorador y vaya a http://localhost:8080/albums. La página devuelve una lista de los objetos JSON.

Implementación del artefacto

Compile e implemente la primera aplicación contenedora desde el archivo JAR local con el comando containerapp up.

Este comando:

  • Crear el grupo de recursos
  • Crea un Azure Container Registry
  • Compila la imagen de contenedor e insértela en el registro
  • Crea el entorno de Container Apps con un área de trabajo de Log Analytics
  • Crear e implementa la aplicación contenedora mediante una imagen de contenedor pública

El comando up usa el archivo de Docker en la raíz del repositorio para compilar la imagen del contenedor. La instrucciónEXPOSE en el archivo de Docker define el puerto de destino. Sin embargo, no se necesita un archivo Docker para crear una aplicación de contenedor.

Nota:

Nota: Cuando se usa containerapp up en combinación con una base de código sin Docker, use el parámetro --location para que la aplicación se ejecute en una ubicación distinta a la de Este de EE. UU.

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

Comprobación de la implementación

Copie el FQDN en un explorador web. En el explorador web, vaya al punto de conexión /albums del FQDN.

Captura de pantalla de la respuesta del punto de conexión de la API de álbumes.

Implementación de un archivo WAR

También puede implementar la aplicación contenedora desde un archivo WAR.

Limpieza de recursos

Si no va a seguir usando esta aplicación, puede eliminar la instancia de Azure Container Apps y todos los servicios asociados quitando el grupo de recursos.

Siga estos pasos para quitar los recursos que ha creado:

az group delete \
  --resource-group $RESOURCE_GROUP

Sugerencia

¿Tiene problemas? Háganoslo saber en GitHub abriendo una incidencia en el repositorio de Azure Container Apps.

Pasos siguientes