Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
O azure.yaml arquivo é o arquivo de configuração para projetos da CLI do Desenvolvedor do Azure (azd). Coloque-o na raiz do projeto para definir os serviços, os recursos do Azure, a infraestrutura, os ganchos e o pipeline de CI/CD que compõem seu aplicativo. Quando você executa comandos como azd up, azd provisionou azd deploy, a CLI lê este arquivo para entender a estrutura do aplicativo e como implantá-lo no Azure.
Este artigo é uma referência completa para o esquema azure.yaml. Para começar a azd usar modelos, consulte a visão geral dos modelos da CLI do Desenvolvedor do Azure.
Amostra
Veja a seguir um exemplo genérico de um azure.yaml arquivo para um azd modelo. Para obter um exemplo do mundo real, consulte o azure.yamlmodelo do ToDo NodeJs Mongo:
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
Propriedades de nível superior
| Nome do elemento | Necessário | Tipo | Descrição |
|---|---|---|---|
name |
Y | cadeia | O nome do aplicativo. Somente letras minúsculas, números e hifens (-) são permitidos. O nome deve começar e terminar com uma letra ou um número. |
resourceGroup |
N | cadeia | Nome do grupo de recursos do Azure. Quando especificado, substitui o nome do grupo de recursos usado para provisionamento de infraestrutura. Dá suporte à substituição de variável de ambiente. |
metadata |
N | objeto | Metadados sobre o modelo de aplicativo. |
infra |
N | objeto | Fornece configuração adicional para provisionamento de infraestrutura do Azure. |
services |
N | objeto | Definição de serviços que compõem o aplicativo. |
resources |
N | objeto | Definição de recursos do Azure usados pelo aplicativo. |
pipeline |
N | objeto | Definição de pipeline de integração contínua. |
hooks |
N | objeto | Ganchos de nível de comando para azd comandos. |
requiredVersions |
N | objeto | Fornece configuração adicional para versões azd e extensões necessárias. |
state |
N | objeto | Fornece configuração adicional para o gerenciamento de estado. |
platform |
N | objeto | Fornece configuração adicional para recursos específicos da plataforma, como o Centro de Desenvolvimento do Azure. |
workflows |
N | objeto | Fornece configuração adicional para fluxos de trabalho, como o comportamento de substituição azd up . |
cloud |
N | objeto | Fornece configuração adicional para implantação em nuvens soberanas. A nuvem padrão é AzureCloud. |
name
(cadeia de caracteres, obrigatório) O nome do aplicativo. Somente letras minúsculas, números e hifens (-) são permitidos. O nome deve começar e terminar com uma letra ou um número. Comprimento mínimo: 2 caracteres.
name: my-app
resourceGroup
(cadeia de caracteres) Nome do grupo de recursos do Azure. Quando especificado, substitui o nome do grupo de recursos usado para provisionamento de infraestrutura. Dá suporte à substituição de variável de ambiente. Deve ter entre 3 e 64 caracteres.
resourceGroup: rg-my-app-${AZURE_ENV_NAME}
metadata
(objeto) Metadados sobre o modelo de aplicativo.
| Propriedade | Necessário | Tipo | Descrição |
|---|---|---|---|
template |
N | cadeia | Identificador do modelo do qual o aplicativo foi criado. |
metadata:
template: todo-nodejs-mongo@0.0.1-beta
infra
(objeto) Fornece configuração adicional para provisionamento de infraestrutura do Azure.
| Propriedade | Necessário | Tipo | Descrição |
|---|---|---|---|
provider |
N | cadeia | O provedor de provisionamento de infraestrutura usado para provisionar os recursos do Azure para o aplicativo. Padrão: bicep. Valores permitidos: bicep, terraform. |
path |
N | cadeia | O caminho da pasta relativa para os modelos de provisionamento do Azure para o provedor especificado. Padrão: infra. |
module |
N | cadeia | O nome do módulo padrão dentro dos modelos de provisionamento do Azure. Padrão: main. |
layers |
N | matriz | Camadas para provisionamento de infraestrutura do Azure. Consulte infra.layers. |
Note
Quando layers for especificado com pelo menos um item, as propriedades e module as path propriedades não poderão ser usadas. Em vez disso, use valores específicos module da camadapath.
infra.layers
(matriz de objetos) Define as camadas de provisionamento para a infraestrutura do Azure. Cada camada representa uma unidade independente de provisionamento.
| Propriedade | Necessário | Tipo | Descrição |
|---|---|---|---|
name |
Y | cadeia | O nome da camada de provisionamento. |
path |
Y | cadeia | O caminho da pasta relativa para os modelos de provisionamento do Azure para o provedor especificado. |
module |
N | cadeia | O nome do módulo de provisionamento do Azure usado ao provisionar recursos. Padrão: main. |
hooks |
N | objeto | Ganchos de camada de provisionamento. Suportes preprovision e postprovision ganchos. Ao especificar caminhos, eles devem ser relativos ao caminho da camada. Consulte a definição do Gancho. |
infra:
provider: bicep
layers:
- name: core
path: ./infra/core
- name: services
path: ./infra/services
hooks:
postprovision:
shell: sh
run: ./scripts/post-provision.sh
Exemplo de provedor Terraform como IaC
Para usar o Terraform em vez de Bicep, defina como providerterraform. Para obter mais informações, consulte Usar o Terraform como um provedor 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) Definição de serviços que compõem o aplicativo. Cada chave é um nome de serviço e o valor é um objeto de configuração de serviço.
Propriedades de serviço
| Propriedade | Necessário | Tipo | Descrição |
|---|---|---|---|
host |
Y | cadeia | O tipo de recurso do Azure usado para implementação de serviço. Consulte os tipos de host. |
project |
Condicional | cadeia | Caminho para o diretório do código-fonte do serviço. Necessário para a maioria dos tipos de host. |
image |
Condicional | cadeia | A imagem de origem a ser usada para a imagem de contêiner em vez de compilar da origem. Dá suporte à substituição de variável de ambiente. Válido apenas para containerapp host. |
language |
N | cadeia | Linguagem de implementação de serviço. Valores permitidos: dotnet, csharp, fsharppy, python, , js, ts, java, . docker |
module |
N | cadeia | Caminho do módulo de infraestrutura usado para implantar o serviço em relação à pasta infra raiz. Se omitida, a CLI pressupõe que o nome do módulo seja o mesmo que o nome do serviço. |
dist |
N | cadeia | Caminho relativo para artefatos de implantação de serviço. |
resourceName |
N | cadeia | Nome do recurso do Azure que implementa o serviço. Por padrão, a CLI descobre o recurso do Azure com a marca azd-service-name definida como o nome do serviço atual. Dá suporte à substituição de variável de ambiente. |
resourceGroup |
N | cadeia | Nome do grupo de recursos do Azure que contém o recurso. Quando especificado, a CLI localiza o recurso do Azure dentro do grupo de recursos especificado. Dá suporte à substituição de variável de ambiente. |
remoteBuild |
N | boolean | Se você deve usar o build remoto para implantação de aplicativo de funções. Somente válido quando host for function. Quando definido como true, o pacote de implantação é criado remotamente usando o Oryx. O padrão é para true aplicativos de funções JavaScript, TypeScript e Python. |
docker |
N | objeto | Configuração do Docker. Aplicável somente para hosts baseados em contêiner. Consulte docker. |
k8s |
N | objeto | Opções de configuração do AKS. Somente válido quando host for aks. Consulte k8s. |
config |
N | objeto | Opções de configuração extras para o serviço. |
uses |
N | matriz | Lista de nomes de serviço e nomes de recursos dos quais esse serviço depende. |
env |
N | objeto | Um mapa de nomes de variáveis de ambiente para valores. Dá suporte à substituição de variável de ambiente. |
apiVersion |
N | cadeia | Versão da API do provedor de recursos para implantações. Somente válido quando host for containerapp. |
hooks |
N | objeto | Ganchos de nível de serviço. Consulte os ganchos de serviço. |
Tip
Consulte exemplos de serviço para obter exemplos yaml completos de diferentes configurações de serviço.
Tipos de host
A host propriedade determina o tipo de recurso do Azure usado para implementação de serviço e controla quais outras propriedades são válidas.
| Valor do host | Descrição | Requer project |
Suporta image |
Suporta docker |
Suporta k8s |
Suporta env |
Suporta apiVersion |
|---|---|---|---|---|---|---|---|
appservice |
Serviço de Aplicativo do Azure | Y | N | N | N | N | N |
containerapp |
Aplicativos de Contêiner do Azure |
project ou image (não ambos) |
Y | Y | N | Y | Y |
function |
Azure Functions | Y | N | N | N | N | N |
staticwebapp |
Aplicativos Web Estáticos do Azure | Y | N | N | N | N | N |
springapp |
Aplicativos Spring do Azure | Y | N | N | N | N | N |
aks |
Serviço de Kubernetes do Azure | N | N | Y | Y | N | N |
ai.endpoint |
Ponto de extremidade online de IA do Azure | Y | N | Y | N | N | N |
azure.ai.agent |
Agente de IA do Azure | Y | N | Y | N | N | N |
Note
springapp O suporte requer aceitação para recursos alfa. Para obter mais informações, consulte os recursos alfa.
Note
Quando host for containerapp, você deve fornecer um image ou projectoutro, mas não ambos. Se image estiver definido, o contêiner será implantado a partir da imagem especificada. Se project estiver definido, a imagem do contêiner será criada a partir da origem.
ai.endpoint Configuração
(object, required when host is ai.endpoint) Fornece configuração adicional para a implantação de ponto de extremidade online de IA do Azure.
| Propriedade | Necessário | Tipo | Descrição |
|---|---|---|---|
workspace |
N | cadeia | O nome do workspace do projeto do AI Studio. Quando omitido, azd usa o valor especificado na variável de AZUREAI_PROJECT_NAME ambiente. Dá suporte à substituição de variável de ambiente. |
flow |
N | objeto | A configuração de Fluxo de Prompt do Azure AI Studio. Quando omitido, um fluxo de prompt não é criado. Consulte a configuração do componente de IA. |
environment |
N | objeto | A configuração de ambiente personalizado do Azure AI Studio. Quando omitido, um ambiente personalizado não é criado. Consulte a configuração do componente de IA. |
model |
N | objeto | A configuração do modelo do Azure AI Studio. Quando omitido, um modelo não é criado. Consulte a configuração do componente de IA. |
deployment |
Y | objeto | A configuração de implantação de ponto de extremidade online do Azure AI Studio. Uma nova implantação de ponto de extremidade online é criada e o tráfego é automaticamente deslocado para a nova implantação após a conclusão bem-sucedida. Consulte a configuração de implantação de IA. |
Note
Quando host é ai.endpoint, ambos project e config são necessários. Consulte ai.endpoint a configuração das propriedades de configuração necessárias.
Configuração do componente de IA
| Propriedade | Necessário | Tipo | Descrição |
|---|---|---|---|
name |
N | cadeia | Nome do componente de IA. Quando omitido, azd gera um nome com base no tipo de componente e no nome do serviço. Dá suporte à substituição de variável de ambiente. |
path |
Y | cadeia | O caminho para o arquivo de configuração do componente de IA ou o código-fonte. |
overrides |
N | objeto | Um mapa de pares de valores de chave usados para substituir a configuração do componente de IA. Dá suporte à substituição de variável de ambiente. |
Configuração de implantação de IA
Herda todas as propriedades da configuração do componente de IA, além de:
| Propriedade | Necessário | Tipo | Descrição |
|---|---|---|---|
environment |
N | objeto | Um mapa de pares chave/valor a ser definido como variáveis de ambiente para a implantação. Os valores dão suporte à substituição de variável de ambiente e azd sistema operacional. |
services:
myendpoint:
project: ./src/endpoint
host: ai.endpoint
config:
workspace: my-ai-project
deployment:
path: ./deployment
environment:
MODEL_NAME: ${AZURE_OPENAI_MODEL}
docker
(objeto) Configuração do Docker para um serviço. Aplicável somente a hosts que dão suporte a contêineres (containerapp, , aks, ai.endpoint). azure.ai.agent
| Propriedade | Necessário | Tipo | Descrição |
|---|---|---|---|
path |
N | cadeia | O caminho para o Dockerfile, em relação ao seu serviço. Padrão: ./Dockerfile. |
context |
N | cadeia | O contexto de build do Docker. Quando especificado, substitui o contexto padrão. Padrão: .. |
platform |
N | cadeia | O destino da plataforma. Padrão: amd64. |
registry |
N | cadeia | O registro de contêiner para o qual enviar a imagem por push. Se omitido, o padrão será o valor da variável de AZURE_CONTAINER_REGISTRY_ENDPOINT ambiente. Dá suporte à substituição de variável de ambiente. |
image |
N | cadeia | O nome que é aplicado à imagem de contêiner criada. Se omitido, o padrão será {appName}/{serviceName}-{environmentName}. Dá suporte à substituição de variável de ambiente. |
tag |
N | cadeia | A marca que é aplicada à imagem de contêiner criada. Se omitido, o padrão será azd-deploy-{unix time (seconds)}. Dá suporte à substituição de variável de ambiente. |
buildArgs |
N | Matriz de cadeias de caracteres | Crie argumentos para passar para o comando de build do Docker. |
network |
N | cadeia | O modo de rede para instruções RUN durante o build do Docker. Passado quanto --network ao build do Docker. Por exemplo, use host para permitir que o contêiner de build acesse a rede de host. |
remoteBuild |
N | boolean | Se a imagem deve ser criada remotamente. Se definido como true, a imagem será criada remotamente usando o recurso de build remoto do Registro de Contêiner do Azure. Se o build remoto falhar, azd retornará automaticamente à compilação localmente usando o Docker ou o Podman, se disponível. |
k8s
(objeto) Opções de configuração do AKS (Serviço de Kubernetes do Azure). Somente válido quando host for aks.
| Propriedade | Necessário | Tipo | Descrição |
|---|---|---|---|
deploymentPath |
N | cadeia | O caminho relativo do caminho do serviço para os manifestos de implantação k8s. Padrão: manifests. |
namespace |
N | cadeia | O namespace k8s dos recursos implantados. Quando especificado, um novo namespace k8s será criado se ele ainda não existir. Padrão: nome do projeto. |
deployment |
N | objeto | A configuração de implantação do k8s. Consulte a configuração de implantação. |
service |
N | objeto | A configuração do serviço k8s. Consulte a configuração de serviço. |
ingress |
N | objeto | A configuração de entrada k8s. Consulte a configuração de entrada. |
helm |
N | objeto | A configuração do helm. Consulte a configuração do Helm. |
kustomize |
N | objeto | A configuração kustomize. Consulte a configuração do Kustomize. |
Configuração de implantação
| Propriedade | Necessário | Tipo | Descrição |
|---|---|---|---|
name |
N | cadeia | O nome do recurso de implantação k8s a ser usado durante a implantação. Se não estiver definido, procurará um recurso de implantação no mesmo namespace que contém o nome do serviço. Padrão: nome do serviço. |
Configuração de serviço
| Propriedade | Necessário | Tipo | Descrição |
|---|---|---|---|
name |
N | cadeia | O nome do recurso de serviço k8s a ser usado como o ponto de extremidade de serviço padrão. Se não for definido, pesquisará um recurso de serviço no mesmo namespace que contém o nome do serviço. Padrão: nome do serviço. |
Configuração de entrada
| Propriedade | Necessário | Tipo | Descrição |
|---|---|---|---|
name |
N | cadeia | O nome do recurso de entrada k8s a ser usado como o ponto de extremidade de serviço padrão. Se não estiver definido, pesquisará um recurso de entrada no mesmo namespace que contém o nome do serviço. Padrão: nome do serviço. |
relativePath |
N | cadeia | O caminho relativo para o serviço da raiz do controlador de entrada. Quando definido, ele é acrescentado à raiz do caminho do recurso de entrada. |
Configuração do Helm
| Propriedade | Necessário | Tipo | Descrição |
|---|---|---|---|
repositories |
N | matriz | Os repositórios do helm a serem adicionados. |
releases |
N | matriz | O helm é liberado para instalação. |
repositories itens de matriz:
| Propriedade | Necessário | Tipo | Descrição |
|---|---|---|---|
name |
Y | cadeia | O nome do repositório helm. |
url |
Y | cadeia | A URL do repositório helm. |
releases itens de matriz:
| Propriedade | Necessário | Tipo | Descrição |
|---|---|---|---|
name |
Y | cadeia | O nome da versão do helm. |
chart |
Y | cadeia | O nome do gráfico do helm. |
version |
N | cadeia | A versão do gráfico do helm. |
namespace |
N | cadeia | O namespace k8s para instalar o gráfico do helm. O padrão é o namespace do serviço. |
values |
N | cadeia | Caminho relativo do serviço para um values.yaml para passar para o gráfico do helm. |
Configuração de Kustomize
| Propriedade | Necessário | Tipo | Descrição |
|---|---|---|---|
dir |
N | cadeia | O caminho relativo para o diretório kustomize. Dá suporte à substituição de variável de ambiente. |
edits |
N | Matriz de cadeias de caracteres | As edições kustomize a serem aplicadas antes da implantação. Dá suporte à substituição de variável de ambiente. |
env |
N | objeto | Pares de chave/valor de ambiente usados para gerar um .env arquivo no diretório kustomize. Os valores dão suporte à substituição de variável de ambiente. |
Ganchos de serviço
Ganchos de nível de serviço são executados durante eventos do ciclo de vida do serviço. Os ganchos devem corresponder aos nomes de eventos de serviço prefixados com pre ou post. Ao especificar caminhos, eles devem ser relativos ao caminho do serviço. Consulte Personalizar seus fluxos de trabalho da CLI do Desenvolvedor do Azure usando comando e ganchos de evento para obter mais detalhes.
Ganchos de serviço com suporte: prerestore, , postrestore, prebuild, postbuild, prepackage, postpackage, , prepublish, postpublish, , , predeploy. postdeploy
Cada gancho usa o formato de definição do Gancho .
Exemplos de serviço
Aplicativos de contêiner com opções do 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
Aplicativos de contêiner de uma imagem predefinida
services:
api:
image: myregistry.azurecr.io/myapp:latest
host: containerapp
AKS com ganchos de nível de serviço
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) Definição de recursos do Azure usados pelo aplicativo. Cada chave é um nome de recurso e o valor é um objeto de configuração de recurso. Os recursos podem ser referenciados por serviços por meio da uses propriedade.
Propriedades comuns do recurso
| Propriedade | Necessário | Tipo | Descrição |
|---|---|---|---|
type |
Y | cadeia | O tipo de recurso. Consulte os tipos de recursos. |
uses |
N | matriz | Outros recursos dos quais esse recurso depende. |
existing |
N | boolean | Quando definido como true, esse recurso não é criado e, em vez disso, é usado para fins de referência. Padrão: false. |
Tip
Consulte o exemplo de Recursos para obter um exemplo yaml completo combinando vários tipos de recursos.
Tipos de recursos
A type propriedade determina o tipo de recurso do Azure e controla quais propriedades adicionais estão disponíveis.
| Tipo de valor | Descrição | Propriedades adicionais |
|---|---|---|
host.appservice |
Aplicativo Web do Serviço de Aplicativo do Azure | Consulte host.appservice as propriedades. |
host.containerapp |
Aplicativo de contêiner baseado em Docker | Consulte host.containerapp as propriedades. |
ai.openai.model |
Um modelo de IA implantado e pronto para uso | Consulte ai.openai.model as propriedades. |
ai.project |
Um projeto do Microsoft Foundry com modelos | Consulte ai.project as propriedades. |
ai.search |
Pesquisa de IA do Azure | Consulte ai.search as propriedades. |
db.postgres |
Banco de Dados do Azure para PostgreSQL | Nenhuma propriedade extra. |
db.mysql |
Banco de Dados do Azure para MySQL | Nenhuma propriedade extra. |
db.redis |
Cache do Azure para Redis | Nenhuma propriedade extra. |
db.mongo |
Azure Cosmos DB for MongoDB | Nenhuma propriedade extra. |
db.cosmos |
Azure Cosmos DB for NoSQL | Consulte db.cosmos as propriedades. |
messaging.eventhubs |
Namespace dos Hubs de Eventos do Azure | Consulte messaging.eventhubs as propriedades. |
messaging.servicebus |
Namespace do Azure Service Bus | Consulte messaging.servicebus as propriedades. |
storage |
Conta de Armazenamento do Azure | Consulte storage as propriedades. |
keyvault |
Azure Key Vault | Consulte keyvault as propriedades. |
propriedades de host.appservice
| Propriedade | Necessário | Tipo | Descrição |
|---|---|---|---|
port |
N | inteiro | Porta na qual o aplicativo Web escuta. Padrão: 80. |
runtime |
Y | objeto | A configuração de runtime do idioma. Consulte abaixo. |
env |
N | matriz | Variáveis de ambiente. Cada item tem name (obrigatório) valuee secret propriedades. Dá suporte à substituição de variável de ambiente. |
startupCommand |
N | cadeia | Comando de inicialização que é executado como parte da inicialização do aplicativo Web. |
uses |
N | Matriz de cadeias de caracteres | Outros recursos que esse recurso usa. |
runtime Objeto:
| Propriedade | Necessário | Tipo | Descrição |
|---|---|---|---|
stack |
Y | cadeia | A pilha de runtime do idioma. Valores permitidos: node, python. |
version |
Y | cadeia | A versão de runtime do idioma. O formato varia de acordo com a pilha (por exemplo, 22-lts para Nó, 3.13 para Python). |
resources:
web:
type: host.appservice
port: 8080
runtime:
stack: node
version: 22-lts
uses:
- db
propriedades de host.containerapp
| Propriedade | Necessário | Tipo | Descrição |
|---|---|---|---|
port |
N | inteiro | Porta na qual o aplicativo de contêiner escuta. Padrão: 80. |
env |
N | matriz | Variáveis de ambiente. Cada item tem name (obrigatório) valuee secret propriedades. Dá suporte à substituição de variável de ambiente. |
uses |
N | Matriz de cadeias de caracteres | Outros recursos que esse recurso usa. |
propriedades de ai.openai.model
| Propriedade | Necessário | Tipo | Descrição |
|---|---|---|---|
model |
Condicional | objeto | O modelo de IA subjacente. Necessário quando existing é false. |
existing |
N | boolean | Quando definido como true, esse recurso não é criado e, em vez disso, é usado para fins de referência. Padrão: false. |
model Objeto:
| Propriedade | Necessário | Tipo | Descrição |
|---|---|---|---|
name |
Y | cadeia | O nome do modelo de IA. |
version |
Y | cadeia | A versão do modelo de IA. |
resources:
chatModel:
type: ai.openai.model
model:
name: gpt-4o
version: "2024-08-06"
propriedades de ai.project
| Propriedade | Necessário | Tipo | Descrição |
|---|---|---|---|
models |
N | matriz | Os modelos de IA a serem implantados como parte do projeto de IA. |
existing |
N | boolean | Quando definido como true, esse recurso não é criado e, em vez disso, é usado para fins de referência. Padrão: false. |
models itens de matriz:
| Propriedade | Necessário | Tipo | Descrição |
|---|---|---|---|
name |
Y | cadeia | O nome do modelo de IA. |
version |
Y | cadeia | A versão do modelo de IA. |
format |
Y | cadeia | O formato do modelo de IA (por exemplo, Microsoft, ). OpenAI |
sku |
Y | objeto | A configuração de SKU para o modelo de IA. |
sku Objeto:
| Propriedade | Necessário | Tipo | Descrição |
|---|---|---|---|
name |
Y | cadeia | O nome da SKU (por exemplo, GlobalStandard). |
usageName |
Y | cadeia | O nome de uso da SKU para fins de cobrança (por exemplo, OpenAI.GlobalStandard.gpt-4o-mini). |
capacity |
Y | inteiro | A capacidade da SKU. |
propriedades de ai.search
| Propriedade | Necessário | Tipo | Descrição |
|---|---|---|---|
existing |
N | boolean | Quando definido como true, esse recurso não é criado e, em vez disso, é usado para fins de referência. Padrão: false. |
propriedades de db.cosmos
| Propriedade | Necessário | Tipo | Descrição |
|---|---|---|---|
containers |
N | matriz | Contêineres para armazenar dados. Cada contêiner armazena uma coleção de itens. |
containers itens de matriz:
| Propriedade | Necessário | Tipo | Descrição |
|---|---|---|---|
name |
Y | cadeia | É o nome do contêiner. |
partitionKeys |
Y | matriz | As chaves de partição usadas para distribuir dados entre partições. Máximo de 3 chaves. Padrão: /id. |
propriedades de messaging.eventhubs
| Propriedade | Necessário | Tipo | Descrição |
|---|---|---|---|
hubs |
N | Matriz de cadeias de caracteres | Nomes de hub a serem criados no namespace dos Hubs de Eventos. |
existing |
N | boolean | Quando definido como true, esse recurso não é criado e, em vez disso, é usado para fins de referência. Padrão: false. |
propriedades de messaging.servicebus
| Propriedade | Necessário | Tipo | Descrição |
|---|---|---|---|
queues |
N | Matriz de cadeias de caracteres | Nomes de fila para criar no namespace do Barramento de Serviço. |
topics |
N | Matriz de cadeias de caracteres | Nomes de tópico a serem criados no namespace do Barramento de Serviço. |
existing |
N | boolean | Quando definido como true, esse recurso não é criado e, em vez disso, é usado para fins de referência. Padrão: false. |
propriedades de storage
| Propriedade | Necessário | Tipo | Descrição |
|---|---|---|---|
containers |
N | Matriz de cadeias de caracteres | Nomes de contêiner da Conta de Armazenamento do Azure. |
existing |
N | boolean | Quando definido como true, esse recurso não é criado e, em vez disso, é usado para fins de referência. Padrão: false. |
propriedades de keyvault
| Propriedade | Necessário | Tipo | Descrição |
|---|---|---|---|
existing |
N | boolean | Quando definido como true, esse recurso não é criado e, em vez disso, é usado para fins de referência. Padrão: false. |
Exemplo 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) Definição de pipeline de integração contínua.
| Propriedade | Necessário | Tipo | Descrição |
|---|---|---|---|
provider |
N | cadeia | O provedor de pipeline a ser usado para integração contínua. Padrão: github. Valores permitidos: github, azdo. |
variables |
N | Matriz de cadeias de caracteres | Lista de variáveis de azd ambiente a serem usadas no pipeline como variáveis. |
secrets |
N | Matriz de cadeias de caracteres | Lista de variáveis de azd ambiente a serem usadas no pipeline como segredos. |
pipeline:
provider: azdo
variables:
- CUSTOM_SETTING
secrets:
- API_KEY
hooks
(objeto) Ganchos de nível de comando. Os ganchos devem corresponder azd nomes de comando prefixados com pre ou post dependendo de quando o script deve ser executado. Ao especificar caminhos, eles devem ser relativos ao caminho do projeto. Consulte Personalizar seus fluxos de trabalho da CLI do Desenvolvedor do Azure usando comando e ganchos de evento para obter mais detalhes.
Ganchos de comando com suporte: preprovision, , postprovision, preinfracreate, postinfracreate, preinfradelete, postinfradelete, , postdownpredown, preup, , postup, prepackage, , postpackage, , prepublish, postpublish, , predeploy, postdeploy, , prerestore, postrestore.
Cada gancho usa o formato de definição do Gancho .
Tip
Consulte exemplos do Gancho para obter exemplos de YAML completos, incluindo ganchos específicos da plataforma, executores tipado e vários ganchos por evento.
hooks:
preprovision:
shell: sh
run: ./scripts/setup.sh
postdeploy:
shell: sh
run: azd env set APP_URL ${SERVICE_WEB_ENDPOINT_URL}
Definição de gancho
Um gancho pode ser um único objeto de gancho ou uma matriz de objetos de gancho. Cada objeto de gancho tem as seguintes propriedades:
| Propriedade | Necessário | Tipo | Descrição |
|---|---|---|---|
run |
Condicional | cadeia | O script embutido ou o caminho relativo do script. Necessário ao especificar shell, , kind, dir, interactive, continueOnError, , secretsou config. Ao especificar um script embutido, você também deve especificar o shell que usar. O shell é inferido automaticamente ao usar caminhos de arquivo. |
shell |
N | cadeia | Tipo de shell para executar scripts. Padrão: sh. Valores permitidos: sh, pwsh. |
kind |
N | cadeia | Tipo de executor para o script de gancho. Quando omitido, o tipo é detectado automaticamente da extensão de arquivo do run caminho (por exemplo, .py torna-se python, .ps1 torna-se pwsh). Valores permitidos: sh, pwsh, js, ts, python, dotnet. |
dir |
N | cadeia | Diretório de trabalho para execução de gancho. Usado como a raiz do projeto para instalação de dependência e como o diretório de trabalho ao executar o script. Os caminhos relativos são resolvidos do projeto ou da raiz do serviço. Quando omitido, o padrão é o diretório que contém o arquivo de script. |
continueOnError |
N | boolean | Se um erro de script interrompe o azd comando. Padrão: false. |
interactive |
N | boolean | Se o script é executado no modo interativo, associando a stdin, stdoute stderr do console em execução. Padrão: false. |
windows |
N | objeto | Quando especificado, substitui a configuração do gancho quando executado em ambientes do Windows. Usa o mesmo formato de objeto de gancho. |
posix |
N | objeto | Quando especificado, substitui a configuração do gancho quando executado em ambientes POSIX (Linux e macOS). Usa o mesmo formato de objeto de gancho. |
secrets |
N | objeto | Um mapa de variáveis de azd ambiente para conectar segredos. Se uma variável tiver sido definida como um segredo no ambiente, o valor do segredo será passado para o gancho. |
config |
N | objeto | Configuração específica do executor. As propriedades disponíveis dependem do kind valor. Consulte a configuração do executor do Gancho. |
Note
Quando ambos windows e posix são especificados, as runpropriedades , , shell, kinddir, interactive, secretscontinueOnErrore , não config podem ser usadas no nível superior. Em vez disso, use os objetos específicos da plataforma.
Configuração do executor do gancho
A config propriedade aceita propriedades diferentes dependendo do kind valor.
Configuração de JavaScript e TypeScript (js, ts)
| Propriedade | Necessário | Tipo | Descrição |
|---|---|---|---|
packageManager |
N | cadeia | O gerenciador de pacotes a ser usado para instalação de dependência. Substitui a detecção automática de arquivos de bloqueio. Valores permitidos: npm, pnpm, yarn. |
Configuração do Python
| Propriedade | Necessário | Tipo | Descrição |
|---|---|---|---|
virtualEnvName |
N | cadeia | O nome do diretório para o ambiente virtual do Python. O padrão é a detecção automática (.venv, venv) ou {baseName}_env. |
Configuração do .NET (dotnet)
| Propriedade | Necessário | Tipo | Descrição |
|---|---|---|---|
configuration |
N | cadeia | A configuração do MSBuild para a criação do script de gancho (por exemplo, Debug, ). Release |
framework |
N | cadeia | O moniker da estrutura de destino para compilar e executar o script de gancho (por exemplo, net8.0, ). net10.0 |
Configuração do Shell (sh, pwsh)
Atualmente, os executores de shell não dão suporte config a propriedades.
Exemplos de gancho
Ganchos específicos da plataforma
hooks:
preprovision:
windows:
shell: pwsh
run: ./scripts/setup.ps1
posix:
shell: sh
run: ./scripts/setup.sh
Gancho do Python com tipo
hooks:
postprovision:
kind: python
run: ./scripts/seed-data.py
dir: ./scripts
config:
virtualEnvName: .venv
Vários ganchos para um único evento
hooks:
postprovision:
- shell: sh
run: ./scripts/step1.sh
- shell: sh
run: ./scripts/step2.sh
requiredVersions
(objeto) Fornece configuração adicional para versões azd e extensões necessárias.
| Propriedade | Necessário | Tipo | Descrição |
|---|---|---|---|
azd |
N | cadeia | Uma variedade de versões com suporte de azd para este projeto. Se a versão estiver azd fora desse intervalo, o projeto falhará ao carregar. Dá suporte à sintaxe de intervalo semver. |
extensions |
N | objeto | Um mapa de extensões necessárias e restrições de versão para este projeto. Dá suporte a restrições semver. Se a versão for omitida, a versão mais recente será instalada. |
requiredVersions:
azd: ">= 0.6.0-beta.3"
extensions:
azure.ai.agents: ">=1.0.0"
my-extension: latest
state
(objeto) Fornece configuração adicional para o gerenciamento de estado.
| Propriedade | Necessário | Tipo | Descrição |
|---|---|---|---|
remote |
N | objeto | Fornece configuração adicional para o gerenciamento de estado remoto. Consulte state.remote. |
state.remote
| Propriedade | Necessário | Tipo | Descrição |
|---|---|---|---|
backend |
Y | cadeia | O tipo de back-end de estado remoto. Padrão: AzureBlobStorage. Valores permitidos: AzureBlobStorage. |
config |
Condicional | objeto | Configuração específica de back-end. Necessário quando backend é AzureBlobStorage. Consulte a configuração do Armazenamento de Blobs do Azure. |
Configuração do Armazenamento de Blobs do Azure
| Propriedade | Necessário | Tipo | Descrição |
|---|---|---|---|
accountName |
Y | cadeia | O nome da conta do Azure Storage. |
containerName |
N | cadeia | O nome do contêiner do Armazenamento do Azure. O padrão será o nome do projeto, se não for especificado. |
endpoint |
N | cadeia | O ponto de extremidade do Armazenamento do Azure. Padrão: blob.core.windows.net. |
state:
remote:
backend: AzureBlobStorage
config:
accountName: mystorageaccount
containerName: azd-state
platform
(objeto) Fornece configuração adicional para recursos específicos da plataforma, como o Centro de Desenvolvimento do Azure.
| Propriedade | Necessário | Tipo | Descrição |
|---|---|---|---|
type |
Y | cadeia | O tipo de plataforma. Valores permitidos: devcenter. |
config |
N | objeto | Configuração específica da plataforma. Consulte a configuração do Centro de Desenvolvimento. |
Configuração do Centro de Desenvolvimento
Disponível quando type for devcenter:
| Propriedade | Necessário | Tipo | Descrição |
|---|---|---|---|
name |
N | cadeia | O nome do Centro de Desenvolvimento do Azure. Usado como o centro de desenvolvimento padrão para este projeto. |
project |
N | cadeia | O nome do projeto do Centro de Desenvolvimento do Azure. |
catalog |
N | cadeia | O nome do catálogo do Centro de Desenvolvimento do Azure. |
environmentDefinition |
N | cadeia | O nome da definição de ambiente do catálogo do Centro de Desenvolvimento. |
environmentType |
N | cadeia | O tipo de ambiente de projeto do Centro de Desenvolvimento usado para o ambiente de implantação. |
platform:
type: devcenter
config:
name: my-devcenter
project: my-project
catalog: my-catalog
environmentDefinition: my-env-def
environmentType: dev
workflows
(objeto) Fornece configuração adicional para fluxos de trabalho, como o comportamento de substituição azd up .
| Propriedade | Necessário | Tipo | Descrição |
|---|---|---|---|
up |
N | objeto ou matriz | Quando especificado, substitui o comportamento padrão para o azd up fluxo de trabalho. |
Etapas do fluxo de trabalho
O up fluxo de trabalho aceita uma steps matriz (ou pode ser especificado diretamente como uma matriz). Cada etapa executa um azd comando.
| Propriedade | Necessário | Tipo | Descrição |
|---|---|---|---|
azd |
Y | cadeia de caracteres ou objeto | O azd comando a ser executado. Pode ser uma cadeia de caracteres (por exemplo, provision) ou um objeto com uma args matriz. |
Configurar a ordem da etapa do fluxo de trabalho
O arquivo a seguir azure.yaml altera o comportamento padrão de azd up mover a azd package etapa após a azd provision etapa. Use essa abordagem em cenários em que você precisa saber as URLs dos recursos durante o processo de build ou empacotamento.
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) Fornece configuração adicional para implantação em nuvens soberanas, como o Azure Governamental. A nuvem padrão é AzureCloud.
| Propriedade | Necessário | Tipo | Descrição |
|---|---|---|---|
name |
N | cadeia | O nome do ambiente de nuvem. Valores permitidos: AzureCloud, AzureChinaCloud, AzureUSGovernment. |
cloud:
name: AzureUSGovernment
Solicitar ajuda
Para obter informações sobre como arquivar um bug, solicitar ajuda ou propor um novo recurso para a CLI do Desenvolvedor do Azure, visite a página solução de problemas e suporte.