Información general sobre las plantillas de Azure Developer CLI
Las plantillas de Azure Developer CLI (azd
) son repositorios de código estándar que incluyen código de aplicación de ejemplo, así como archivos azd
de configuración e infraestructura. Las plantillas azd
le permiten aprovisionar recursos de Azure, implementar la aplicación, configurar canalizaciones de CI/CD, etc. Puede crear sus propias plantillas o empezar a usar una plantilla existente desde un repositorio de plantillas como Awesome AZD. En este artículo, obtendrá información sobre los conceptos siguientes:
- Cómo las plantillas
azd
le permiten aprovisionar e implementar recursos de aplicación - Cómo se estructuran las plantillas
azd
- Cómo decidir si usar una plantilla existente o crear una
- Exploración de las plantillas
azd
de inicio existentes
¿Por qué utilizar las plantillas de Azure Developer CLI?
A menudo, los desarrolladores se enfrentan a muchas tareas difíciles y lentas al compilar aplicaciones de entorno configuradas y diseñadas correctamente para la nube. Los equipos deben tener en cuenta muchos aspectos diferentes en estos entornos, como la creación de recursos, la aplicación de configuraciones, la configuración de la supervisión y el registro, la creación de canalizaciones de CI/CD y otras tareas. Las plantillas azd
reducen y simplifican estas responsabilidades para ayudar al desarrollador en su proceso desde el desarrollo local hasta una aplicación implementada correctamente en Azure.
Por ejemplo, supongamos que trabajas en una empresa que opera una plataforma de gestión de tickets y comunicación con el cliente, que requiere los siguientes recursos de Azure:
- Dos instancias de App Service y un plan de App Service para hospedar una aplicación web de front-end y la API de back-end
- Una instancia de Key Vault para almacenar secretos de aplicación seguros
- Una base de datos de Cosmos DB para almacenar los datos de la aplicación de forma permanente
- Recursos de Azure Monitor, como los paneles de Application Insights
- Una instancia de Service Bus para administrar la mensajería escalable
- Las canalizaciones de integración continua y entrega continua garantizan que los cambios se pueden implementar de forma confiable a través de un proceso automatizado y repetible.
En lugar de empezar desde cero, con azd
puede aprovechar plantillas de arquitectura existentes para aprovisionar e implementar la mayoría de los recursos automáticamente. De esta forma, el equipo de desarrollo puede centrarse en la creación de la aplicación y en realizar ajustes menores en la arquitectura de la plantilla.
Como funcionan las plantillas de Azure Developer CLI
Las plantillas de Azure Developer CLI están diseñadas para funcionar con comandos azd
, como azd init
y azd up
. Las plantillas incluyen archivos de configuración e infraestructura como código (IaC) que usan los comandos para realizar tareas como aprovisionar recursos de Azure e implementar el código de la aplicación en ellos.
Por ejemplo, un flujo de trabajo típico de azd
que utiliza una plantilla existente incluye los siguientes pasos:
Ejecute el comando
azd init
con el parámetro--template
para clonar una plantilla existente desde GitHub.azd init --template todo-nodejs-mongo
Ejecute el comando
azd auth login
para autenticarse en su suscripción de Azure.azd auth login
Ejecute el comando
azd up
para aprovisionar e implementar los recursos de plantilla en Azure. El comandoazd up
aprovecha los archivos de configuración e infraestructura como código (IaC) de la plantilla para aprovisionar recursos de Azure e implementar la aplicación en esos recursos.azd up
Una vez configurado el entorno en Azure, puede modificar localmente las características de la aplicación o las plantillas de recursos de Azure y, a continuación, volver a ejecutar
azd up
para aprovisionar los cambios.
Descripción de la estructura de plantillas de Azure Developer CLI
Todas las plantillas azd
comparten una estructura de archivos similar basada en las convenciones de azd
. Los recursos mínimos necesarios suelen incluir lo siguiente:
Carpeta
infra
: contiene toda la infraestructura de Bicep o Terraform como archivos de código para la plantillaazd
.azd
ejecuta estos archivos para crear los recursos de Azure necesarios para hospedar la aplicación.Archivo
azure.yaml
: un archivo de configuración que define uno o varios servicios en su proyecto y los asigna a recursos de Azure definidos en la carpetainfra
para su implementación. Por ejemplo, puede definir un servicio de API y un servicio front-end web y asignarlos a distintos recursos de Azure para su implementación.Carpeta
.azure
: contiene configuraciones esenciales de Azure y variables de entorno, como la ubicación para implementar recursos u otra información de suscripción.Carpeta
src
: contiene todo el código fuente de la aplicación que se puede implementar. Algunas plantillasazd
excluyen la carpetasrc
y solo proporcionan recursos de infraestructura para que pueda agregar su propio código de aplicación.Nota:
Las plantillas que excluyen la carpeta
src
se suelen diseñar como plantillas de inicio de infraestructura.
Las plantillas azd
también incluyen opcionalmente una o varias de las siguientes carpetas:
- Carpeta
.github
: contiene los archivos de flujo de trabajo de CI/CD para Acciones de GitHub, que es el proveedor de CI/CD predeterminado para azd. - Carpeta
.azdo
: si decide usar Azure Pipelines para CI/CD, defina los archivos de configuración de flujo de trabajo en esta carpeta. - Carpeta
.devcontainer
: le permite configurar un entorno de contenedor de desarrollo para su aplicación.
Por ejemplo, una plantilla azd
común podría coincidir con la siguiente estructura de carpetas:
Empezar con una plantilla existente o crear la suya propia
Existen dos enfoques principales para trabajar con plantillas azd
:
- Empezar con una plantilla
azd
existente.- Esta es una buena opción si está empezando con
azd
o si busca una plantilla para crear una nueva aplicación con una arquitectura y marcos similares.
- Esta es una buena opción si está empezando con
- Convertir un proyecto existente en una plantilla
azd
.- Esta es una buena opción cuando ya tiene una aplicación existente, pero quiere que sea compatible con las funcionalidades de
azd
.
- Esta es una buena opción cuando ya tiene una aplicación existente, pero quiere que sea compatible con las funcionalidades de
En las secciones siguientes se proporciona más información sobre estas dos opciones.
Empezar con una plantilla existente
Hay una amplia selección de plantillas azd
disponibles en la galería de plantillas awesome-azd. Estas plantillas proporcionan código de aplicación e infraestructura para varios escenarios de desarrollo, marcos de lenguaje y servicios de Azure. Si encuentra una plantilla que se alinea con la pila de aplicaciones local o la arquitectura deseada, puede ampliar y reemplazar el código de plantilla por el suyo propio.
Por ejemplo, las plantillas azd
siguientes proporcionan puntos de partida para las arquitecturas y marcos de aplicaciones comunes:
Creación de una nueva plantilla azd
para la aplicación
También puede convertir una aplicación existente en una plantilla azd
para mejorar el repositorio con funcionalidades de aprovisionamiento e implementación. Este enfoque permite el mayor control y genera una solución reutilizable para el futuro trabajo de desarrollo en la aplicación. A continuación, se indican los pasos generales para crear su propia plantilla:
- Inicialización de la plantilla de proyecto con
azd init
. - Cree los archivos de infraestructura como código de Bicep o Terraform en la carpeta
infra
. - Actualización del archivo
azure.yaml
para vincular los servicios de aplicaciones junto con los recursos de Azure. - Aprovisionamiento e implementación con
azd up
.
Los recursos siguientes proporcionan más información sobre cómo crear sus propias plantillas:
- Creación de la primera plantilla de Azure Developer CLI
- Haga su proyecto compatible con la guía de
azd
Directrices para usar plantillas azd
Tenga en cuenta que cada plantilla que use con Azure Developer CLI tiene licencia por su propietario respectivo (que puede o no ser Microsoft) en virtud del contrato que acompaña a la plantilla. Es su responsabilidad determinar qué licencia se aplica a cualquier plantilla que elija usar.
Microsoft no es responsable de ninguna plantilla que no sea de Microsoft y no examina estas plantillas para detectar problemas de seguridad, privacidad, compatibilidad o rendimiento. Las plantillas que usa con Azure Developer CLI, incluidas las proporcionadas por Microsoft, no son compatibles con ningún servicio o programa de soporte técnico de Microsoft. Las plantillas proporcionadas por Microsoft se proporcionan tal cual, sin garantía de ningún tipo.