Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
El azure.yaml archivo es el archivo de configuración de los proyectos de la CLI para desarrolladores de Azure (azd). Colóquelo en la raíz del proyecto para definir los servicios, los recursos de Azure, la infraestructura, los enlaces y la canalización de CI/CD que componen la aplicación. Al ejecutar comandos como azd up, azd provisiono azd deploy, la CLI lee este archivo para comprender la estructura de la aplicación y cómo implementarlo en Azure.
Este artículo es una referencia completa para el esquema azure.yaml. Para empezar a trabajar con azd plantillas, consulte Introducción a las plantillas de la CLI para desarrolladores de Azure.
Muestra
A continuación se muestra un ejemplo genérico de un azure.yaml archivo para una azd plantilla. Para ver un ejemplo real, consulte el azure.yaml elemento de la plantilla de Mongo toDo NodeJs:
name: yourApp
metadata:
template: yourApp@0.0.1-beta
services:
web:
project: ./src/web
dist: build
language: js
host: appservice
api:
project: ./src/api
language: js
host: appservice
Propiedades de nivel superior
| Nombre del elemento | Obligatorio | Tipo | Descripción |
|---|---|---|---|
name |
Y | cuerda | Nombre de la aplicación. Solo se permiten letras minúsculas, números y guiones (-). debe empezar y terminar con una letra o un número. |
resourceGroup |
N | cuerda | Nombre del grupo de recursos de Azure. Cuando se especifica, invalida el nombre del grupo de recursos usado para el aprovisionamiento de infraestructura. Admite la sustitución de variables de entorno. |
metadata |
N | objeto | Metadatos sobre la plantilla de aplicación. |
infra |
N | objeto | Proporciona configuración adicional para el aprovisionamiento de la infraestructura de Azure. |
services |
N | objeto | Definición de servicios que componen la aplicación. |
resources |
N | objeto | Definición de los recursos de Azure usados por la aplicación. |
pipeline |
N | objeto | Definición de la canalización de integración continua. |
hooks |
N | objeto | Enlaces de nivel de comando para azd comandos. |
requiredVersions |
N | objeto | Proporciona configuración adicional para las versiones necesarias de azd y extensiones. |
state |
N | objeto | Proporciona configuración adicional para la administración de estados. |
platform |
N | objeto | Proporciona configuración adicional para características específicas de la plataforma, como el Centro de desarrollo de Azure. |
workflows |
N | objeto | Proporciona una configuración adicional para los flujos de trabajo, como el comportamiento de invalidación azd up . |
cloud |
N | objeto | Proporciona configuración adicional para la implementación en nubes soberanas. La nube predeterminada es AzureCloud. |
name
(string, required) Nombre de la aplicación. Solo se permiten letras minúsculas, números y guiones (-). debe empezar y terminar con una letra o un número. Longitud mínima: 2 caracteres.
name: my-app
resourceGroup
(cadena) Nombre del grupo de recursos de Azure. Cuando se especifica, invalida el nombre del grupo de recursos usado para el aprovisionamiento de infraestructura. Admite la sustitución de variables de entorno. Debe tener entre 3 y 64 caracteres.
resourceGroup: rg-my-app-${AZURE_ENV_NAME}
metadata
(objeto) Metadatos sobre la plantilla de aplicación.
| Propiedad | Obligatorio | Tipo | Descripción |
|---|---|---|---|
template |
N | cuerda | Identificador de la plantilla desde la que se creó la aplicación. |
metadata:
template: todo-nodejs-mongo@0.0.1-beta
infra
(objeto) Proporciona configuración adicional para el aprovisionamiento de la infraestructura de Azure.
| Propiedad | Obligatorio | Tipo | Descripción |
|---|---|---|---|
provider |
N | cuerda | Proveedor de aprovisionamiento de infraestructura que se usa para aprovisionar los recursos de Azure para la aplicación. Predeterminado: bicep. Valores permitidos: bicep, terraform. |
path |
N | cuerda | Ruta de acceso de carpeta relativa a las plantillas de aprovisionamiento de Azure para el proveedor especificado. Predeterminado: infra. |
module |
N | cuerda | Nombre del módulo predeterminado dentro de las plantillas de aprovisionamiento de Azure. Predeterminado: main. |
layers |
N | arreglo | Capas para el aprovisionamiento de la infraestructura de Azure. Consulte infra.layers. |
Note
Cuando layers se especifica con al menos un elemento, no se pueden usar las path propiedades y module . En su lugar, use valores y module específicos path de la capa.
infra.layers
(matriz de objetos) Define las capas de aprovisionamiento para la infraestructura de Azure. Cada capa representa una unidad independiente de aprovisionamiento.
| Propiedad | Obligatorio | Tipo | Descripción |
|---|---|---|---|
name |
Y | cuerda | Nombre de la capa de aprovisionamiento. |
path |
Y | cuerda | Ruta de acceso de carpeta relativa a las plantillas de aprovisionamiento de Azure para el proveedor especificado. |
module |
N | cuerda | Nombre del módulo de aprovisionamiento de Azure que se usa al aprovisionar recursos. Predeterminado: main. |
hooks |
N | objeto | Enlaces de capa de aprovisionamiento. Admite preprovision y postprovision enlaces. Al especificar rutas de acceso, deben ser relativas a la ruta de acceso de capa. Consulte Definición de enlace. |
infra:
provider: bicep
layers:
- name: core
path: ./infra/core
- name: services
path: ./infra/services
hooks:
postprovision:
shell: sh
run: ./scripts/post-provision.sh
Ejemplo de proveedor de Terraform como IaC
Para usar Terraform en lugar de Bicep, establezca en providerterraform. Para obtener más información, consulte Uso de Terraform como proveedor de IaC.
name: yourApp-terraform
metadata:
template: yourApp-terraform@0.0.1-beta
services:
web:
project: ./src/web
dist: build
language: js
host: appservice
api:
project: ./src/api
language: js
host: appservice
infra:
provider: terraform
services
(objeto) Definición de servicios que componen la aplicación. Cada clave es un nombre de servicio y el valor es un objeto de configuración de servicio.
Propiedades del servicio
| Propiedad | Obligatorio | Tipo | Descripción |
|---|---|---|---|
host |
Y | cuerda | Tipo de recurso de Azure que se usa para la implementación del servicio. Consulte Tipos de host. |
project |
Condicional | cuerda | Ruta de acceso al directorio de código fuente del servicio. Necesario para la mayoría de los tipos de host. |
image |
Condicional | cuerda | Imagen de origen que se va a usar para la imagen de contenedor en lugar de compilar desde el origen. Admite la sustitución de variables de entorno. Solo es válido para containerapp el host. |
language |
N | cuerda | Lenguaje de implementación del servicio. Valores permitidos: dotnet, csharp, fsharp, py, python, jsts, , java, , . docker |
module |
N | cuerda | Ruta de acceso del módulo de infraestructura que se usa para implementar el servicio en relación con la carpeta de infraestructura raíz. Si se omite, la CLI supone que el nombre del módulo es el mismo que el nombre del servicio. |
dist |
N | cuerda | Ruta de acceso relativa a los artefactos de implementación del servicio. |
resourceName |
N | cuerda | Nombre del recurso de Azure que implementa el servicio. De forma predeterminada, la CLI detecta el recurso de Azure con la etiqueta azd-service-name establecida en el nombre del servicio actual. Admite la sustitución de variables de entorno. |
resourceGroup |
N | cuerda | Nombre del grupo de recursos de Azure que contiene el recurso. Cuando se especifica, la CLI busca el recurso de Azure dentro del grupo de recursos especificado. Admite la sustitución de variables de entorno. |
remoteBuild |
N | booleano | Si se usa la compilación remota para la implementación de aplicaciones de funciones. Solo es válido cuando host es function. Cuando se establece en true, el paquete de implementación se compila de forma remota mediante Oryx. El valor predeterminado es true para las aplicaciones de funciones de JavaScript, TypeScript y Python. |
docker |
N | objeto | Configuración de Docker. Solo se aplica a los hosts basados en contenedores. Consulte docker. |
k8s |
N | objeto | Opciones de configuración de AKS. Solo es válido cuando host es aks. Consulte k8s. |
config |
N | objeto | Opciones de configuración adicionales para el servicio. |
uses |
N | arreglo | Lista de nombres de servicio y nombres de recursos de los que depende este servicio. |
env |
N | objeto | Asignación de nombres de variables de entorno a valores. Admite la sustitución de variables de entorno. |
apiVersion |
N | cuerda | Versión de api del proveedor de recursos para implementaciones. Solo es válido cuando host es containerapp. |
hooks |
N | objeto | Enlaces de nivel de servicio. Consulte Enlaces de servicio. |
Tip
Consulte Ejemplos de servicios para ver ejemplos completos de YAML de diferentes configuraciones de servicio.
Tipos de host
La host propiedad determina el tipo de recurso de Azure que se usa para la implementación del servicio y los controles que otras propiedades son válidas.
| Valor de host | Descripción | Requiere project |
Admite image |
Admite docker |
Admite k8s |
Admite env |
Admite apiVersion |
|---|---|---|---|---|---|---|---|
appservice |
Azure App Service | Y | N | N | N | N | N |
containerapp |
Azure Container Apps (Aplicaciones de Contenedores de Azure) |
project o image (no ambos) |
Y | Y | N | Y | Y |
function |
Azure Functions | Y | N | N | N | N | N |
staticwebapp |
Aplicaciones Web Estáticas de Azure | Y | N | N | N | N | N |
springapp |
Aplicaciones de Azure Spring | Y | N | N | N | N | N |
aks |
Azure Kubernetes Service | N | N | Y | Y | N | N |
ai.endpoint |
Punto de conexión en línea de Azure AI | Y | N | Y | N | N | N |
azure.ai.agent |
Agente de Azure AI | Y | N | Y | N | N | N |
Note
springapp la compatibilidad requiere la participación en las características alfa. Para obtener más información, consulte Características alfa.
Note
Cuando host es containerapp, debe proporcionar o imageproject, pero no ambos. Si image se establece, el contenedor se implementa a partir de la imagen especificada. Si project se establece, la imagen de contenedor se compila a partir del origen.
ai.endpoint configuración
(object, required when host is ai.endpoint) Proporciona configuración adicional para la implementación de puntos de conexión en línea de Azure AI.
| Propiedad | Obligatorio | Tipo | Descripción |
|---|---|---|---|
workspace |
N | cuerda | Nombre del área de trabajo del proyecto de AI Studio. Cuando se omite, azd usa el valor especificado en la variable de AZUREAI_PROJECT_NAME entorno. Admite la sustitución de variables de entorno. |
flow |
N | objeto | Configuración del flujo de mensajes de Azure AI Studio. Cuando se omite, no se crea un flujo de solicitud. Consulte Configuración de componentes de IA. |
environment |
N | objeto | Configuración del entorno personalizado de Azure AI Studio. Cuando se omite, no se crea un entorno personalizado. Consulte Configuración de componentes de IA. |
model |
N | objeto | Configuración del modelo de Azure AI Studio. Cuando se omite, no se crea un modelo. Consulte Configuración de componentes de IA. |
deployment |
Y | objeto | Configuración de implementación de puntos de conexión en línea de Azure AI Studio. Se crea una nueva implementación de punto de conexión en línea y el tráfico se desplaza automáticamente a la nueva implementación tras la finalización correcta. Consulte Configuración de implementación de IA. |
Note
Cuando host es ai.endpoint, y projectconfig son necesarios. Consulte ai.endpoint config para obtener las propiedades de configuración necesarias.
Configuración de componentes de IA
| Propiedad | Obligatorio | Tipo | Descripción |
|---|---|---|---|
name |
N | cuerda | Nombre del componente de IA. Cuando se omite, azd genera un nombre basado en el tipo de componente y el nombre del servicio. Admite la sustitución de variables de entorno. |
path |
Y | cuerda | Ruta de acceso al archivo de configuración de componentes de IA o código fuente. |
overrides |
N | objeto | Mapa de pares clave-valor usados para invalidar la configuración del componente de IA. Admite la sustitución de variables de entorno. |
Configuración de implementación de IA
Hereda todas las propiedades de la configuración del componente de IA, además de:
| Propiedad | Obligatorio | Tipo | Descripción |
|---|---|---|---|
environment |
N | objeto | Mapa de pares clave-valor que se van a establecer como variables de entorno para la implementación. Los valores admiten la sustitución de variables de entorno y azd sistema operativo. |
services:
myendpoint:
project: ./src/endpoint
host: ai.endpoint
config:
workspace: my-ai-project
deployment:
path: ./deployment
environment:
MODEL_NAME: ${AZURE_OPENAI_MODEL}
docker
(objeto) Configuración de Docker para un servicio. Solo se aplica a los hosts que admiten contenedores (containerapp, aks, ai.endpoint, azure.ai.agent).
| Propiedad | Obligatorio | Tipo | Descripción |
|---|---|---|---|
path |
N | cuerda | Ruta de acceso al Dockerfile, en relación con el servicio. Predeterminado: ./Dockerfile. |
context |
N | cuerda | Contexto de compilación de Docker. Cuando se especifica, invalida el contexto predeterminado. Predeterminado: .. |
platform |
N | cuerda | Destino de la plataforma. Predeterminado: amd64. |
registry |
N | cuerda | Registro de contenedor en el que se va a insertar la imagen. Si se omite, el valor predeterminado es el valor de la variable de AZURE_CONTAINER_REGISTRY_ENDPOINT entorno. Admite la sustitución de variables de entorno. |
image |
N | cuerda | Nombre que se aplica a la imagen de contenedor compilada. Si se omite, el valor predeterminado es {appName}/{serviceName}-{environmentName}. Admite la sustitución de variables de entorno. |
tag |
N | cuerda | Etiqueta que se aplica a la imagen de contenedor compilada. Si se omite, el valor predeterminado es azd-deploy-{unix time (seconds)}. Admite la sustitución de variables de entorno. |
buildArgs |
N | Matriz de cadenas | Compile argumentos para pasar al comando docker build. |
network |
N | cuerda | El modo de red para las instrucciones run durante la compilación de Docker. Se pasa como --network a la compilación de Docker. Por ejemplo, use host para permitir que el contenedor de compilación acceda a la red host. |
remoteBuild |
N | booleano | Si se va a compilar la imagen de forma remota. Si se establece en true, la imagen se compila de forma remota mediante la característica de compilación remota de Azure Container Registry. Si se produce un error en la compilación remota, azd recurre automáticamente a la compilación local mediante Docker o Podman si está disponible. |
k8s
(objeto) Opciones de configuración de Azure Kubernetes Service (AKS). Solo es válido cuando host es aks.
| Propiedad | Obligatorio | Tipo | Descripción |
|---|---|---|---|
deploymentPath |
N | cuerda | Ruta de acceso relativa de la ruta de acceso del servicio a los manifiestos de implementación k8s. Predeterminado: manifests. |
namespace |
N | cuerda | Espacio de nombres k8s de los recursos implementados. Cuando se especifica, se crea un nuevo espacio de nombres k8s si aún no existe. Valor predeterminado: nombre del proyecto. |
deployment |
N | objeto | Configuración de implementación k8s. Consulte Configuración de implementación. |
service |
N | objeto | Configuración del servicio k8s. Consulte Configuración del servicio. |
ingress |
N | objeto | Configuración de entrada k8s. Consulte Configuración de entrada. |
helm |
N | objeto | Configuración de Helm. Consulte Configuración de Helm. |
kustomize |
N | objeto | Configuración de kustomize. Consulte Configuración de Kustomize. |
Configuración de implementación
| Propiedad | Obligatorio | Tipo | Descripción |
|---|---|---|---|
name |
N | cuerda | Nombre del recurso de implementación k8s que se va a usar durante la implementación. Si no se establece, busca un recurso de implementación en el mismo espacio de nombres que contiene el nombre del servicio. Valor predeterminado: nombre del servicio. |
Configuración del servicio
| Propiedad | Obligatorio | Tipo | Descripción |
|---|---|---|---|
name |
N | cuerda | Nombre del recurso de servicio k8s que se va a usar como punto de conexión de servicio predeterminado. Si no se establece, busca un recurso de servicio en el mismo espacio de nombres que contiene el nombre del servicio. Valor predeterminado: nombre del servicio. |
Configuración de entrada
| Propiedad | Obligatorio | Tipo | Descripción |
|---|---|---|---|
name |
N | cuerda | Nombre del recurso de entrada k8s que se va a usar como punto de conexión de servicio predeterminado. Si no se establece, busca un recurso de entrada en el mismo espacio de nombres que contiene el nombre del servicio. Valor predeterminado: nombre del servicio. |
relativePath |
N | cuerda | Ruta de acceso relativa al servicio desde la raíz del controlador de entrada. Cuando se establece, se anexa a la raíz de la ruta de acceso del recurso de entrada. |
Configuración de Helm
| Propiedad | Obligatorio | Tipo | Descripción |
|---|---|---|---|
repositories |
N | arreglo | Repositorios de Helm que se van a agregar. |
releases |
N | arreglo | Las versiones de Helm que se van a instalar. |
repositories elementos de matriz:
| Propiedad | Obligatorio | Tipo | Descripción |
|---|---|---|---|
name |
Y | cuerda | Nombre del repositorio de Helm. |
url |
Y | cuerda | Dirección URL del repositorio de Helm. |
releases elementos de matriz:
| Propiedad | Obligatorio | Tipo | Descripción |
|---|---|---|---|
name |
Y | cuerda | Nombre de la versión de Helm. |
chart |
Y | cuerda | Nombre del gráfico de Helm. |
version |
N | cuerda | Versión del gráfico de Helm. |
namespace |
N | cuerda | Espacio de nombres k8s para instalar el gráfico de Helm. El valor predeterminado es el espacio de nombres del servicio. |
values |
N | cuerda | Ruta de acceso relativa del servicio a una values.yaml que se va a pasar al gráfico de Helm. |
Configuración de Kustomize
| Propiedad | Obligatorio | Tipo | Descripción |
|---|---|---|---|
dir |
N | cuerda | Ruta de acceso relativa al directorio kustomize. Admite la sustitución de variables de entorno. |
edits |
N | Matriz de cadenas | Kustomize edita que se va a aplicar antes de la implementación. Admite la sustitución de variables de entorno. |
env |
N | objeto | Pares clave-valor de entorno usados para generar un .env archivo en el directorio kustomize. Los valores admiten la sustitución de variables de entorno. |
Enlaces de servicio
Los enlaces de nivel de servicio se ejecutan durante los eventos del ciclo de vida del servicio. Los enlaces deben coincidir con los nombres de eventos de servicio prefijos con pre o post. Al especificar rutas de acceso, deben ser relativas a la ruta de acceso del servicio. Consulte Personalización de los flujos de trabajo de la CLI para desarrolladores de Azure mediante enlaces de comandos y eventos para más información.
Enlaces de servicio admitidos: prerestore, postrestore, prebuild, prepackagepostpackageprepublishpostbuild, postpublish, predeploy, . postdeploy
Cada enlace usa el formato de definición de enlace .
Ejemplos de servicio
Aplicaciones de contenedor con opciones de Docker
services:
api:
project: ./src/api
language: js
host: containerapp
docker:
path: ./Dockerfile
context: ../
web:
project: ./src/web
language: js
host: containerapp
docker:
remoteBuild: true
Aplicaciones de contenedor a partir de una imagen precompilada
services:
api:
image: myregistry.azurecr.io/myapp:latest
host: containerapp
AKS con enlaces de nivel de servicio
services:
web:
project: ./src/web
dist: build
language: js
host: aks
hooks:
postdeploy:
shell: sh
run: azd env set REACT_APP_WEB_BASE_URL ${SERVICE_WEB_ENDPOINT_URL}
api:
project: ./src/api
language: js
host: aks
k8s:
ingress:
relativePath: api
hooks:
postdeploy:
shell: sh
run: azd env set REACT_APP_API_BASE_URL ${SERVICE_API_ENDPOINT_URL}
resources
(objeto) Definición de los recursos de Azure usados por la aplicación. Cada clave es un nombre de recurso y el valor es un objeto de configuración de recursos. Los servicios pueden hacer referencia a los recursos a través de la uses propiedad .
Propiedades de recursos comunes
| Propiedad | Obligatorio | Tipo | Descripción |
|---|---|---|---|
type |
Y | cuerda | El tipo de recurso. Consulte Tipos de recursos. |
uses |
N | arreglo | Otros recursos de los que depende este recurso. |
existing |
N | booleano | Cuando se establece en true, este recurso no se crea y, en su lugar, se usa con fines de referencia. Predeterminado: false. |
Tip
Consulte El ejemplo de recursos para ver un ejemplo completo de YAML que combina varios tipos de recursos.
Tipos de recursos
La type propiedad determina el tipo de recurso de Azure y controla qué propiedades adicionales están disponibles.
| Valor del tipo | Descripción | Propiedades adicionales |
|---|---|---|
host.appservice |
Aplicación web de Azure App Service | Consulte host.appservice las propiedades. |
host.containerapp |
Aplicación de contenedor basada en Docker | Consulte host.containerapp las propiedades. |
ai.openai.model |
Un modelo de IA implementado y listo para usar | Consulte ai.openai.model las propiedades. |
ai.project |
Un proyecto de Microsoft Foundry con modelos | Consulte ai.project las propiedades. |
ai.search |
Azure AI Search | Consulte ai.search las propiedades. |
db.postgres |
Base de Datos de Azure para PostgreSQL | No hay propiedades adicionales. |
db.mysql |
Base de Datos Azure para MySQL | No hay propiedades adicionales. |
db.redis |
Caché de Azure para Redis | No hay propiedades adicionales. |
db.mongo |
Azure Cosmos DB para MongoDB | No hay propiedades adicionales. |
db.cosmos |
Azure Cosmos DB para NoSQL | Consulte db.cosmos las propiedades. |
messaging.eventhubs |
namespace de Azure Event Hubs | Consulte messaging.eventhubs las propiedades. |
messaging.servicebus |
Espacio de nombres de Azure Service Bus | Consulte messaging.servicebus las propiedades. |
storage |
Cuenta de Azure Storage | Consulte storage las propiedades. |
keyvault |
Azure Key Vault | Consulte keyvault las propiedades. |
propiedades de host.appservice
| Propiedad | Obligatorio | Tipo | Descripción |
|---|---|---|---|
port |
N | integer | Puerto en el que escucha la aplicación web. Predeterminado: 80. |
runtime |
Y | objeto | Configuración de Language Runtime. Consulte a continuación. |
env |
N | arreglo | Variables de entorno. Cada elemento tiene name (obligatorio), valuey secret propiedades. Admite la sustitución de variables de entorno. |
startupCommand |
N | cuerda | Comando de inicio que se ejecuta como parte del inicio de la aplicación web. |
uses |
N | Matriz de cadenas | Otros recursos que usa este recurso. |
runtime objeto:
| Propiedad | Obligatorio | Tipo | Descripción |
|---|---|---|---|
stack |
Y | cuerda | Pila de Language Runtime. Valores permitidos: node, python. |
version |
Y | cuerda | La versión de Language Runtime. El formato varía según la pila (por ejemplo, 22-lts para Node, 3.13 para Python). |
resources:
web:
type: host.appservice
port: 8080
runtime:
stack: node
version: 22-lts
uses:
- db
propiedades de host.containerapp
| Propiedad | Obligatorio | Tipo | Descripción |
|---|---|---|---|
port |
N | integer | Puerto en el que escucha la aplicación contenedora. Predeterminado: 80. |
env |
N | arreglo | Variables de entorno. Cada elemento tiene name (obligatorio), valuey secret propiedades. Admite la sustitución de variables de entorno. |
uses |
N | Matriz de cadenas | Otros recursos que usa este recurso. |
propiedades de ai.openai.model
| Propiedad | Obligatorio | Tipo | Descripción |
|---|---|---|---|
model |
Condicional | objeto | Modelo de IA subyacente. Obligatorio cuando existing es false. |
existing |
N | booleano | Cuando se establece en true, este recurso no se crea y, en su lugar, se usa con fines de referencia. Predeterminado: false. |
model objeto:
| Propiedad | Obligatorio | Tipo | Descripción |
|---|---|---|---|
name |
Y | cuerda | Nombre del modelo de IA. |
version |
Y | cuerda | Versión del modelo de IA. |
resources:
chatModel:
type: ai.openai.model
model:
name: gpt-4o
version: "2024-08-06"
propiedades de ai.project
| Propiedad | Obligatorio | Tipo | Descripción |
|---|---|---|---|
models |
N | arreglo | Los modelos de inteligencia artificial que se van a implementar como parte del proyecto de inteligencia artificial. |
existing |
N | booleano | Cuando se establece en true, este recurso no se crea y, en su lugar, se usa con fines de referencia. Predeterminado: false. |
models elementos de matriz:
| Propiedad | Obligatorio | Tipo | Descripción |
|---|---|---|---|
name |
Y | cuerda | Nombre del modelo de IA. |
version |
Y | cuerda | Versión del modelo de IA. |
format |
Y | cuerda | El formato del modelo de IA (por ejemplo, Microsoft, OpenAI). |
sku |
Y | objeto | Configuración de SKU para el modelo de IA. |
sku objeto:
| Propiedad | Obligatorio | Tipo | Descripción |
|---|---|---|---|
name |
Y | cuerda | Nombre de la SKU (por ejemplo, GlobalStandard). |
usageName |
Y | cuerda | Nombre de uso de la SKU con fines de facturación (por ejemplo, OpenAI.GlobalStandard.gpt-4o-mini). |
capacity |
Y | integer | Capacidad de la SKU. |
propiedades de ai.search
| Propiedad | Obligatorio | Tipo | Descripción |
|---|---|---|---|
existing |
N | booleano | Cuando se establece en true, este recurso no se crea y, en su lugar, se usa con fines de referencia. Predeterminado: false. |
propiedades de db.cosmos
| Propiedad | Obligatorio | Tipo | Descripción |
|---|---|---|---|
containers |
N | arreglo | Contenedores para almacenar datos. Cada contenedor almacena una colección de elementos. |
containers elementos de matriz:
| Propiedad | Obligatorio | Tipo | Descripción |
|---|---|---|---|
name |
Y | cuerda | El nombre del contenedor. |
partitionKeys |
Y | arreglo | Las claves de partición usadas para distribuir datos entre particiones. Máximo 3 claves. Predeterminado: /id. |
propiedades de messaging.eventhubs
| Propiedad | Obligatorio | Tipo | Descripción |
|---|---|---|---|
hubs |
N | Matriz de cadenas | Nombres de concentrador que se van a crear en el espacio de nombres de Event Hubs. |
existing |
N | booleano | Cuando se establece en true, este recurso no se crea y, en su lugar, se usa con fines de referencia. Predeterminado: false. |
propiedades de messaging.servicebus
| Propiedad | Obligatorio | Tipo | Descripción |
|---|---|---|---|
queues |
N | Matriz de cadenas | Nombres de cola que se van a crear en el espacio de nombres de Service Bus. |
topics |
N | Matriz de cadenas | Nombres de temas que se van a crear en el espacio de nombres de Service Bus. |
existing |
N | booleano | Cuando se establece en true, este recurso no se crea y, en su lugar, se usa con fines de referencia. Predeterminado: false. |
propiedades de storage
| Propiedad | Obligatorio | Tipo | Descripción |
|---|---|---|---|
containers |
N | Matriz de cadenas | Nombres de contenedor de la cuenta de Azure Storage. |
existing |
N | booleano | Cuando se establece en true, este recurso no se crea y, en su lugar, se usa con fines de referencia. Predeterminado: false. |
propiedades de keyvault
| Propiedad | Obligatorio | Tipo | Descripción |
|---|---|---|---|
existing |
N | booleano | Cuando se establece en true, este recurso no se crea y, en su lugar, se usa con fines de referencia. Predeterminado: false. |
Ejemplo de recursos
resources:
db:
type: db.postgres
cache:
type: db.redis
chatModel:
type: ai.openai.model
model:
name: gpt-4o
version: "2024-08-06"
web:
type: host.containerapp
port: 3100
uses:
- db
- chatModel
pipeline
(objeto) Definición de la canalización de integración continua.
| Propiedad | Obligatorio | Tipo | Descripción |
|---|---|---|---|
provider |
N | cuerda | Proveedor de canalización que se va a usar para la integración continua. Predeterminado: github. Valores permitidos: github, azdo. |
variables |
N | Matriz de cadenas | Lista de variables de azd entorno que se van a usar en la canalización como variables. |
secrets |
N | Matriz de cadenas | Lista de variables de azd entorno que se van a usar en la canalización como secretos. |
pipeline:
provider: azdo
variables:
- CUSTOM_SETTING
secrets:
- API_KEY
hooks
(objeto) Enlaces de nivel de comando. Los enlaces deben coincidir con azd nombres de comando prefijos con pre o post en función de cuándo se debe ejecutar el script. Al especificar rutas de acceso, deben ser relativas a la ruta de acceso del proyecto. Consulte Personalización de los flujos de trabajo de la CLI para desarrolladores de Azure mediante enlaces de comandos y eventos para más información.
Enlaces de comandos admitidos: , , , , postdeployprepublishpostpublishpostrestoreprerestorepostpackagepredeploypredownpostdownpostupprepackagepreinfradeletepreuppostinfracreatepostinfradeletepreinfracreatepostprovisionpreprovision
Cada enlace usa el formato de definición de enlace .
Tip
Consulte Ejemplos de enlace para ver ejemplos completos de YAML, incluidos enlaces específicos de la plataforma, ejecutores con tipo y varios enlaces por evento.
hooks:
preprovision:
shell: sh
run: ./scripts/setup.sh
postdeploy:
shell: sh
run: azd env set APP_URL ${SERVICE_WEB_ENDPOINT_URL}
Definición de enlace
Un enlace puede ser un solo objeto de enlace o una matriz de objetos de enlace. Cada objeto de enlace tiene las siguientes propiedades:
| Propiedad | Obligatorio | Tipo | Descripción |
|---|---|---|---|
run |
Condicional | cuerda | El script insertado o la ruta de acceso relativa del script. Obligatorio al especificar shell, kind, dir, interactive, continueOnError, secretso config. Al especificar un script insertado, también debe especificar el shell que se va a usar. El shell se deduce automáticamente al usar rutas de acceso de archivo. |
shell |
N | cuerda | Tipo de shell para ejecutar scripts. Predeterminado: sh. Valores permitidos: sh, pwsh. |
kind |
N | cuerda | Tipo de ejecutor para el script de enlace. Cuando se omite, el tipo se detecta automáticamente desde la extensión de archivo de la run ruta de acceso (por ejemplo, .py se convierte en python, .ps1 se convierte en pwsh). Valores permitidos: sh, pwsh, js, ts, python, dotnet. |
dir |
N | cuerda | Directorio de trabajo para la ejecución del enlace. Se usa como raíz del proyecto para la instalación de dependencias y como directorio de trabajo al ejecutar el script. Las rutas de acceso relativas se resuelven desde la raíz del proyecto o del servicio. Cuando se omite, el valor predeterminado es el directorio que contiene el archivo de script. |
continueOnError |
N | booleano | Si un error de script detiene el azd comando. Predeterminado: false. |
interactive |
N | booleano | Indica si el script se ejecuta en modo interactivo, enlazando a stdin, stdouty stderr de la consola en ejecución. Predeterminado: false. |
windows |
N | objeto | Cuando se especifica, invalida la configuración del enlace cuando se ejecuta en entornos de Windows. Usa el mismo formato de objeto de enlace. |
posix |
N | objeto | Cuando se especifica, invalida la configuración de enlace cuando se ejecuta en entornos POSIX (Linux y macOS). Usa el mismo formato de objeto de enlace. |
secrets |
N | objeto | Mapa de variables de azd entorno para enlazar secretos. Si una variable se estableció como un secreto en el entorno, el valor del secreto se pasa al enlace. |
config |
N | objeto | Configuración específica del ejecutor. Las propiedades disponibles dependen del kind valor. Consulte Configuración del ejecutor de enlace. |
Note
Cuando se especifican y windowsposix , las runpropiedades , shell, dirkind, interactive, continueOnError, , secretsy config no se pueden usar en el nivel superior. En su lugar, use los objetos específicos de la plataforma.
Configuración del ejecutor de enlace
La config propiedad acepta propiedades diferentes en función del kind valor.
Configuración de JavaScript y TypeScript (js, ts)
| Propiedad | Obligatorio | Tipo | Descripción |
|---|---|---|---|
packageManager |
N | cuerda | Administrador de paquetes que se va a usar para la instalación de dependencias. Invalida la detección automática de archivos de bloqueo. Valores permitidos: npm, pnpm y yarn. |
Configuración de Python
| Propiedad | Obligatorio | Tipo | Descripción |
|---|---|---|---|
virtualEnvName |
N | cuerda | Nombre de directorio para el entorno virtual de Python. El valor predeterminado es la detección automática (.venv, venv) o {baseName}_env. |
Configuración de .NET (dotnet)
| Propiedad | Obligatorio | Tipo | Descripción |
|---|---|---|---|
configuration |
N | cuerda | Configuración de MSBuild para compilar el script de enlace (por ejemplo, Debug, Release). |
framework |
N | cuerda | El moniker de la plataforma de destino para compilar y ejecutar el script de enlace (por ejemplo, net8.0, net10.0). |
Configuración de Shell (sh, pwsh)
Los ejecutores de shell no admiten config actualmente propiedades.
Ejemplos de enlace
Enlaces específicos de la plataforma
hooks:
preprovision:
windows:
shell: pwsh
run: ./scripts/setup.ps1
posix:
shell: sh
run: ./scripts/setup.sh
Enlace de Python con tipo
hooks:
postprovision:
kind: python
run: ./scripts/seed-data.py
dir: ./scripts
config:
virtualEnvName: .venv
Varios enlaces para un único evento
hooks:
postprovision:
- shell: sh
run: ./scripts/step1.sh
- shell: sh
run: ./scripts/step2.sh
requiredVersions
(objeto) Proporciona configuración adicional para las versiones necesarias de azd y extensiones.
| Propiedad | Obligatorio | Tipo | Descripción |
|---|---|---|---|
azd |
N | cuerda | Intervalo de versiones admitidas de azd para este proyecto. Si la versión de está fuera de azd este intervalo, el proyecto no se puede cargar. Admite la sintaxis del intervalo semver. |
extensions |
N | objeto | Mapa de las extensiones y restricciones de versión necesarias para este proyecto. Admite restricciones semver. Si se omite la versión, se instala la versión más reciente. |
requiredVersions:
azd: ">= 0.6.0-beta.3"
extensions:
azure.ai.agents: ">=1.0.0"
my-extension: latest
state
(objeto) Proporciona configuración adicional para la administración de estados.
| Propiedad | Obligatorio | Tipo | Descripción |
|---|---|---|---|
remote |
N | objeto | Proporciona configuración adicional para la administración de estado remoto. Consulte state.remote. |
state.remote
| Propiedad | Obligatorio | Tipo | Descripción |
|---|---|---|---|
backend |
Y | cuerda | Tipo de back-end de estado remoto. Predeterminado: AzureBlobStorage. Valores permitidos: AzureBlobStorage. |
config |
Condicional | objeto | Configuración específica del back-end. Obligatorio cuando backend es AzureBlobStorage. Consulte Configuración de Azure Blob Storage. |
Configuración de Azure Blob Storage
| Propiedad | Obligatorio | Tipo | Descripción |
|---|---|---|---|
accountName |
Y | cuerda | El nombre de la cuenta de Azure Storage. |
containerName |
N | cuerda | El nombre del contenedor de Azure Storage. El valor predeterminado es el nombre del proyecto si no se especifica. |
endpoint |
N | cuerda | Punto de conexión de Azure Storage. Predeterminado: blob.core.windows.net. |
state:
remote:
backend: AzureBlobStorage
config:
accountName: mystorageaccount
containerName: azd-state
platform
(objeto) Proporciona configuración adicional para características específicas de la plataforma, como el Centro de desarrollo de Azure.
| Propiedad | Obligatorio | Tipo | Descripción |
|---|---|---|---|
type |
Y | cuerda | Tipo de plataforma. Valores permitidos: devcenter. |
config |
N | objeto | Configuración específica de la plataforma. Consulte Configuración del Centro de desarrollo. |
Configuración del Centro de desarrollo
Disponible cuando type es devcenter:
| Propiedad | Obligatorio | Tipo | Descripción |
|---|---|---|---|
name |
N | cuerda | Nombre del Centro de desarrollo de Azure. Se usa como centro de desarrollo predeterminado para este proyecto. |
project |
N | cuerda | Nombre del proyecto del Centro de desarrollo de Azure. |
catalog |
N | cuerda | Nombre del catálogo del Centro de desarrollo de Azure. |
environmentDefinition |
N | cuerda | Nombre de la definición del entorno del catálogo del Centro de desarrollo. |
environmentType |
N | cuerda | Tipo de entorno de proyecto del Centro de desarrollo usado para el entorno de implementación. |
platform:
type: devcenter
config:
name: my-devcenter
project: my-project
catalog: my-catalog
environmentDefinition: my-env-def
environmentType: dev
workflows
(objeto) Proporciona una configuración adicional para los flujos de trabajo, como el comportamiento de invalidación azd up .
| Propiedad | Obligatorio | Tipo | Descripción |
|---|---|---|---|
up |
N | objeto o matriz | Cuando se especifica, invalida el comportamiento predeterminado para el flujo de azd up trabajo. |
Pasos del flujo de trabajo
El up flujo de trabajo acepta una steps matriz (o se puede especificar directamente como una matriz). Cada paso ejecuta un azd comando.
| Propiedad | Obligatorio | Tipo | Descripción |
|---|---|---|---|
azd |
Y | cadena o objeto | Comando azd que se va a ejecutar. Puede ser una cadena (por ejemplo, provision) o un objeto con una args matriz. |
Configuración del orden de pasos de flujo de trabajo
El siguiente azure.yaml archivo cambia el comportamiento predeterminado de azd up para mover el azd package paso después del azd provision paso. Use este enfoque en escenarios en los que necesite conocer las direcciones URL de los recursos durante el proceso de compilación o empaquetado.
name: todo-nodejs-mongo
metadata:
template: todo-nodejs-mongo@0.0.1-beta
workflows:
up:
steps:
- azd: provision
- azd: package
- azd: deploy --all
cloud
(objeto) Proporciona una configuración adicional para la implementación en nubes soberanas, como Azure Government. La nube predeterminada es AzureCloud.
| Propiedad | Obligatorio | Tipo | Descripción |
|---|---|---|---|
name |
N | cuerda | Nombre del entorno de nube. Valores permitidos: AzureCloud, AzureChinaCloud y AzureUSGovernment. |
cloud:
name: AzureUSGovernment
Solicitar ayuda
Para obtener información sobre cómo archivar un error, solicitar ayuda o proponer una nueva característica para la CLI para desarrolladores de Azure, visite la página solución de problemas y soporte técnico.