Inicio rápido: compilación e implementación desde código fuente local a Azure Container Apps
En este artículo, se muestra cómo compilar e implementar un microservicio en Azure Container Apps desde código fuente local mediante el lenguaje de programación que prefiera. En este inicio rápido, creará un servicio de API web de back-end que devuelva una colección estática de álbumes de música.
Nota:
Esta aplicación de ejemplo está disponible en dos versiones. Una versión en la que el origen contiene un Dockerfile. La otra versión no tiene Dockerfile. Seleccione la versión que mejor refleje el código fuente. Si no está familiarizado con los contenedores, seleccione la opción Sin Dockerfile de la parte superior.
En la captura de pantalla siguiente, se muestra la salida del servicio de la API de álbumes que implementaste.
Requisitos previos
Para completar este proyecto, necesita los siguientes elementos:
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. |
CLI de Azure | Instale la CLI de Azure. |
Configurar
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.
export RESOURCE_GROUP="album-containerapps"
export LOCATION="canadacentral"
export ENVIRONMENT="env-album-containerapps"
export API_NAME="album-api"
Obtener el código de ejemplo
Descargue y extraiga la aplicación de ejemplo de API en el idioma que prefiera.
Descargue el código fuente en la máquina.
Extraiga la descarga y convierta la carpeta en containerapps-albumapi-csharp-main/src.
Descargue el código fuente en la máquina.
Extraiga la descarga y convierta la carpeta en containerapps-albumapi-csharp-buildpack/src.
Creación e implementación de la aplicación contenedora
Compile e implemente la primera aplicación contenedora con el comando containerapp up
. Este comando hará lo siguiente:
- Creación del grupo de recursos
- Creación de una instancia de Azure Container Registry
- Compilación de la imagen de contenedor e inserción en el registro
- Creación de un entorno de Container Apps mediante un área de trabajo de Log Analytics
- Cree e implemente la aplicación contenedora mediante la imagen de contenedor de la compilación
- Crear el grupo de recursos
- Cree un registro predeterminado como parte del entorno
- Detecte el lenguaje y el tiempo de ejecución de la aplicación y compile la imagen mediante el módulo de compilación adecuado
- Inserte la imagen en el registro predeterminado de Azure Container Apps
- Creación de un entorno de Container Apps mediante un área de trabajo de Log Analytics
- Cree e implemente la aplicación contenedora mediante la imagen de contenedor de la compilación
El comando up
usa el Dockerfile en la raíz del repositorio para compilar la imagen del contenedor. La instrucción EXPOSE
del Dockerfile definió el puerto de destino, que es el puerto que se usa para enviar tráfico de entrada al contenedor.
Si el comando up
no encontrase un Dockerfile, usará automáticamente módulos de compilación para convertir el origen de la aplicación en un contenedor ejecutable. Dado que el módulo de compilación está intentando ejecutar la compilación en su nombre, será necesario indicar al comando up
a qué puerto enviar tráfico de entrada.
En el ejemplo de código siguiente, el .
(punto) indica a containerapp up
que se ejecute en el directorio actual de la aplicación API de ejemplo extraída.
az containerapp up \
--name $API_NAME \
--location $LOCATION \
--environment $ENVIRONMENT \
--source .
az containerapp up \
--name $API_NAME \
--location $LOCATION \
--environment $ENVIRONMENT \
--ingress external \
--target-port 8080 \
--source .
Importante
Para implementar la aplicación contenedora en un grupo de recursos existente, incluya --resource-group yourResourceGroup
en el comando containerapp up
.
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.
Límites
El tamaño máximo para cargar el código fuente es de 200 MB. Si la carga supera el límite, se devuelve el error 413.
Limpieza de recursos
Si no va a continuar con el tutorial Implementación de un front-end, puede quitar los recursos de Azure creados durante este inicio rápido con el siguiente comando.
Precaución
El comando siguiente elimina el grupo de recursos especificado y todos los recursos que contiene. Si el grupo contiene recursos fuera del ámbito de este inicio rápido, también se eliminarán.
az group delete --name $RESOURCE_GROUP
Sugerencia
¿Tiene problemas? Háganoslo saber en GitHub abriendo una incidencia en el repositorio de Azure Container Apps.
Pasos siguientes
Después de completar este inicio rápido, puede continuar con Tutorial: Comunicación entre microservicios en Azure Container Apps para aprender a implementar una aplicación de front-end que llama a la API.