En esta entrada realizaremos el despliegue de un backend utilizando Azure DevOPS (pipelines), Azure Registries y Azure Containers Apps
Requisitos
Cuenta en Azure
Servicio Azure Registries Activo
Servicio Azure Containers Apps Activo
Cuenta en Azure DevOps
Creando servicio Registries
Partiré de la premisa que ya cuentas con una cuenta en Azure, navegamos en el buscador de servicios y buscamos el Servicio Azure Container Registries
Una vez dentro, deberás de llenar los campos marcados como obligatorios
Para esta entrada te recomendaré que utilices en SKU: Basic, esto para reducir el gasto en la factura y si tu APP no tiene bastante demanda.
Al ser un registro básico, este estará público aplicará el mismo caso para el tipo de Encryptation. Si deseas agregar los tags puedes hacerlo para este ejemplo dejaré todo en blanco y saltaré hasta la última pantalla
Damos clic en el botón create para crear el recurso.
Conectado Azure DevOPS Pipelines con Azure Registries
En esta parte conectaremos nuestro repositorio a Registries a fin de obtener la imagen Docker que posteriormente desplegaremos.
Ingresamos al apartado pipelines de nuestro Azure DevOPS y crearemos una nueva
Seleccionamos Azure Repos Git y posteriormente el proyecto con el que vamos a trabajar. En mi caso es testProject
A continuación nos aparecerán las opciones disponibles, para esta entrada seleccionaremos la segunda opción de Docker (Build and Push and Image to Azure Container Registry)
Ahora seleccionamos la subscripción en la que desplegaremos el contenedor.
En la siguiente pantalla vamos a validar a que registro enviaremos la imagen, así como también el nombre que llevará la imagen. Para este caso dejaré todo como aparece en el asistente y hacemos clic en el Validate and Configure
En la siguiente pantalla nos aparecerá la pantalla del archivo de configuración del pipeline ya finalizado. Hacemos clic en Save and Run, damos commit y esperamos a que se ejecute el pipeline
Una vez que finalizó nuestro Pipeline, procedos a regresar al Registries. En el apartado Repositories podemos observar nuestra imagen desplegada.
Desplegando el contenedor a Azure Container App
Para este apartado crearemos un nuevo recurso de tipo Azure Container App.
Una vez creado el recurso, ingresamos y buscamos el apartado Containers. Probablemente tengamos el contenedor "hello-world", esto porque me he bricando un paso cuando estaba creando el recurso
Hacemos clic en Edit
Nos aperecerá la siguiente ventana donde eliminaremos el contenedor de ejemplo
Hacemos clic en el botón Add (+) y nos aparecerá un cuadro de diálogo donde se deberá ingresar la información para conectar el contenedor que acabamos de desplegar en Registries
Si nos aparece ese error es porque no tenemos permisos para leer las imagenes del Registro, para ello regresamos al Registro
En el apartado Access Keys habilitamos la opción Admin user
Te recomiendo guardar para uso futuro el password que aparece.
Una vez realizado esta modificación regresamos al Container Apps y volvemos a agregar el contenedor.
Ahora podemos tener acceso al registro y las imagenes de contenedor que este tiene.
Al final tienes un apartado Environment Variables, aquí configuras las variables de entorno de tu App, ejemplo conexión a base de datos, puertos, etc.
Como este es un simple hola mundo, solo agregaré la variable de entorno PORT, que es la necesaria para que la app pueda funcionar.
Finalizando las configuraciones hacemos clic en Add
Con esto tendremos nuestra aplicación contenerizada desplegada en Azure Containers App.
Probando el endpoint en Altair Graphql
Top comments (0)