Kommentar
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Filen azure.yaml är konfigurationsfilen för Azure Developer CLI-projekt (azd). Placera den i roten för projektet för att definiera de tjänster, Azure-resurser, infrastruktur, krokar och CI/CD-pipeline som utgör ditt program. När du kör kommandon som azd up, azd provisioneller azd deploy, läser CLI den här filen för att förstå appens struktur och hur du distribuerar den till Azure.
Den här artikeln är en fullständig referens för azure.yaml-schemat. Information om hur du kommer igång med azd mallar finns i Översikt över CLI-mallar för Azure Developer.
Prov
Följande är ett allmänt exempel på en azure.yaml fil för en azd mall. Ett verkligt exempel finns i azure.yaml från Mongo-mallen 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
Egenskaper på den översta nivån
| Elementnamn | Krävs | Typ | Beskrivning |
|---|---|---|---|
name |
Y | sträng | Ansökningsnamnet. Endast gemener, siffror och bindestreck (-) tillåts. Namnet måste börja och sluta med en bokstav eller siffra. |
resourceGroup |
N | sträng | Namnet på Azure-resursgruppen. När det anges åsidosätter det resursgruppsnamn som används för infrastrukturetablering. Stöder ersättning av miljövariabler. |
metadata |
N | objekt | Metadata om programmallen. |
infra |
N | objekt | Tillhandahåller ytterligare konfiguration för etablering av Azure-infrastruktur. |
services |
N | objekt | Definition av tjänster som ingår i programmet. |
resources |
N | objekt | Definition av Azure-resurser som används av programmet. |
pipeline |
N | objekt | Definition av pipeline för kontinuerlig integrering. |
hooks |
N | objekt | Kommandonivåkrokar för azd kommandon. |
requiredVersions |
N | objekt | Tillhandahåller ytterligare konfiguration för nödvändiga versioner av azd och tillägg. |
state |
N | objekt | Tillhandahåller ytterligare konfiguration för tillståndshantering. |
platform |
N | objekt | Ger ytterligare konfiguration för plattformsspecifika funktioner som Azure Dev Center. |
workflows |
N | objekt | Tillhandahåller ytterligare konfiguration för arbetsflöden, till exempel åsidosättande azd up beteende. |
cloud |
N | objekt | Tillhandahåller ytterligare konfiguration för distribution till nationella moln. Standardmolnet är AzureCloud. |
name
(sträng, krävs) Programnamnet. Endast gemener, siffror och bindestreck (-) tillåts. Namnet måste börja och sluta med en bokstav eller siffra. Minsta längd: 2 tecken.
name: my-app
resourceGroup
(sträng) Namnet på Azure-resursgruppen. När det anges åsidosätter det resursgruppsnamn som används för infrastrukturetablering. Stöder ersättning av miljövariabler. Måste vara mellan 3 och 64 tecken.
resourceGroup: rg-my-app-${AZURE_ENV_NAME}
metadata
(objekt) Metadata om programmallen.
| Fastighet | Krävs | Typ | Beskrivning |
|---|---|---|---|
template |
N | sträng | Identifierare för mallen som programmet skapades från. |
metadata:
template: todo-nodejs-mongo@0.0.1-beta
infra
(objekt) Tillhandahåller ytterligare konfiguration för etablering av Azure-infrastruktur.
| Fastighet | Krävs | Typ | Beskrivning |
|---|---|---|---|
provider |
N | sträng | Infrastrukturetableringsprovidern som används för att etablera Azure-resurserna för programmet. Förvald: bicep. Tillåtna värden: bicep, terraform. |
path |
N | sträng | Den relativa mappsökvägen till Azure-etableringsmallarna för den angivna providern. Förvald: infra. |
module |
N | sträng | Namnet på standardmodulen i Azure-etableringsmallarna. Förvald: main. |
layers |
N | samling | Lager för etablering av Azure-infrastruktur. Se även infra.layers. |
Note
När layers har angetts med minst ett objekt path kan egenskaperna och module inte användas. Använd lagerspecifika path värden i module stället.
infra.layers
(matris med objekt) Definierar etableringslager för Azure-infrastruktur. Varje lager representerar en oberoende etableringsenhet.
| Fastighet | Krävs | Typ | Beskrivning |
|---|---|---|---|
name |
Y | sträng | Namnet på etableringsskiktet. |
path |
Y | sträng | Den relativa mappsökvägen till Azure-etableringsmallarna för den angivna providern. |
module |
N | sträng | Namnet på Azure-etableringsmodulen som används vid etablering av resurser. Förvald: main. |
hooks |
N | objekt | Etableringslagerkrokar. Stöd preprovision och postprovision krokar. När du anger sökvägar bör de vara relativa till lagersökvägen. Se Hook-definition. |
infra:
provider: bicep
layers:
- name: core
path: ./infra/core
- name: services
path: ./infra/services
hooks:
postprovision:
shell: sh
run: ./scripts/post-provision.sh
Exempel på Terraform som IaC-provider
Om du vill använda Terraform i stället för Bicep anger du provider till terraform. Mer information finns i Använda Terraform som IaC-provider.
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
(objekt) Definition av tjänster som ingår i programmet. Varje nyckel är ett tjänstnamn och värdet är ett tjänstkonfigurationsobjekt.
Tjänstegenskaper
| Fastighet | Krävs | Typ | Beskrivning |
|---|---|---|---|
host |
Y | sträng | Typen av Azure-resurs som används för tjänstimplementering. Se Värdtyper. |
project |
Conditional | sträng | Sökväg till tjänstens källkodskatalog. Krävs för de flesta värdtyper. |
image |
Conditional | sträng | Källavbildningen som ska användas för containeravbildningen i stället för att skapa från källan. Stöder ersättning av miljövariabler. Endast giltigt för containerapp värden. |
language |
N | sträng | Språk för tjänstimplementering. Tillåtna värden: dotnet, csharp, , fsharppy, , pythonjs, tsjavadocker. |
module |
N | sträng | Sökväg till infrastrukturmodulen som används för att distribuera tjänsten i förhållande till rot-infra-mappen. Om det utelämnas förutsätter CLI att modulnamnet är samma som tjänstnamnet. |
dist |
N | sträng | Relativ sökväg till tjänstdistributionsartefakter. |
resourceName |
N | sträng | Namnet på den Azure-resurs som implementerar tjänsten. Som standard identifierar CLI Azure-resursen med taggen azd-service-name inställd på den aktuella tjänstens namn. Stöder ersättning av miljövariabler. |
resourceGroup |
N | sträng | Namnet på den Azure-resursgrupp som innehåller resursen. När det anges hittar CLI Azure-resursen i den angivna resursgruppen. Stöder ersättning av miljövariabler. |
remoteBuild |
N | boolean | Om du vill använda fjärrversion för distribution av funktionsappar. Endast giltigt när host är function. När det är inställt truepå skapas distributionspaketet via fjärranslutning med Oryx. Standardvärdet är true för JavaScript-, TypeScript- och Python-funktionsappar. |
docker |
N | objekt | Docker-konfiguration. Gäller endast för containerbaserade värdar. Se även docker. |
k8s |
N | objekt | AKS-konfigurationsalternativ. Endast giltigt när host är aks. Se även k8s. |
config |
N | objekt | Extra konfigurationsalternativ för tjänsten. |
uses |
N | samling | Lista över tjänstnamn och resursnamn som tjänsten är beroende av. |
env |
N | objekt | En karta över miljövariabelnamn till värden. Stöder ersättning av miljövariabler. |
apiVersion |
N | sträng | Api-version för resursprovider för distributioner. Endast giltigt när host är containerapp. |
hooks |
N | objekt | Servicenivåkrokar. Se Tjänstkrokar. |
Tip
Se Tjänstexempel för fullständiga YAML-exempel på olika tjänstkonfigurationer.
Värdtyper
Egenskapen host avgör vilken typ av Azure-resurs som används för tjänstimplementering och kontrollerar vilka andra egenskaper som är giltiga.
| Värdvärde | Beskrivning | Kräver project |
Stöder image |
Stöder docker |
Stöder k8s |
Stöder env |
Stöder apiVersion |
|---|---|---|---|---|---|---|---|
appservice |
Azure App-tjänst | Y | N | N | N | N | N |
containerapp |
Azure Container-applikationer |
project eller image (inte båda) |
Y | Y | N | Y | Y |
function |
Azure Functions | Y | N | N | N | N | N |
staticwebapp |
Azure Static Web Apps (statiska webbappar) | Y | N | N | N | N | N |
springapp |
Azure Spring Apps | Y | N | N | N | N | N |
aks |
Azure Kubernetes Service | N | N | Y | Y | N | N |
ai.endpoint |
Azure AI-slutpunkt online | Y | N | Y | N | N | N |
azure.ai.agent |
Azure AI-Agent | Y | N | Y | N | N | N |
Note
springapp support kräver att du anmäler dig till alfafunktioner. Mer information finns i Alpha-funktioner.
Note
När host är containerappmåste du ange antingen image eller project, men inte båda. Om image har angetts distribueras containern från den angivna avbildningen. Om project har angetts skapas containeravbildningen från källan.
ai.endpoint Config
(objekt, krävs när host är ai.endpoint) Tillhandahåller ytterligare konfiguration för azure AI-onlineslutpunktsdistribution.
| Fastighet | Krävs | Typ | Beskrivning |
|---|---|---|---|
workspace |
N | sträng | Namnet på AI Studio-projektarbetsytan. När det utelämnas azd använder du det värde som anges i AZUREAI_PROJECT_NAME miljövariabeln. Stöder ersättning av miljövariabler. |
flow |
N | objekt | Azure AI Studio Prompt Flow-konfigurationen. När det utelämnas skapas inte ett promptflöde. Se AI-komponentkonfiguration. |
environment |
N | objekt | Konfiguration av anpassad Azure AI Studio-miljö. När den utelämnas skapas inte en anpassad miljö. Se AI-komponentkonfiguration. |
model |
N | objekt | Azure AI Studio-modellkonfigurationen. När den utelämnas skapas inte en modell. Se AI-komponentkonfiguration. |
deployment |
Y | objekt | Distributionskonfigurationen för Azure AI Studio-slutpunkt online. En ny distribution av onlineslutpunkter skapas och trafiken flyttas automatiskt till den nya distributionen när den har slutförts. Se KONFIGURATION av AI-distribution. |
Note
När host är ai.endpoint, både project och config krävs. Se ai.endpoint konfigurationsegenskaperna .
AI-komponentkonfiguration
| Fastighet | Krävs | Typ | Beskrivning |
|---|---|---|---|
name |
N | sträng | Namnet på AI-komponenten. När det utelämnas azd genererar ett namn baserat på komponenttypen och tjänstnamnet. Stöder ersättning av miljövariabler. |
path |
Y | sträng | Sökvägen till AI-komponentens konfigurationsfil eller källkod. |
overrides |
N | objekt | En karta över nyckelvärdepar som används för att åsidosätta AI-komponentkonfigurationen. Stöder ersättning av miljövariabler. |
Konfiguration av AI-distribution
Ärver alla egenskaper från AI-komponentkonfigurationen, plus:
| Fastighet | Krävs | Typ | Beskrivning |
|---|---|---|---|
environment |
N | objekt | En karta över nyckel/värde-par som ska anges som miljövariabler för distributionen. Värden stöder ersättning av operativsystem och azd miljövariabler. |
services:
myendpoint:
project: ./src/endpoint
host: ai.endpoint
config:
workspace: my-ai-project
deployment:
path: ./deployment
environment:
MODEL_NAME: ${AZURE_OPENAI_MODEL}
docker
(objekt) Docker-konfiguration för en tjänst. Gäller endast för värdar som stöder containrar (containerapp, aks, ai.endpoint, azure.ai.agent).
| Fastighet | Krävs | Typ | Beskrivning |
|---|---|---|---|
path |
N | sträng | Sökvägen till Dockerfile i förhållande till din tjänst. Förvald: ./Dockerfile. |
context |
N | sträng | Docker-byggkontexten. När det anges åsidosätter standardkontexten. Förvald: .. |
platform |
N | sträng | Plattformsmålet. Förvald: amd64. |
registry |
N | sträng | Containerregistret som avbildningen ska skickas till. Om det utelämnas är värdet AZURE_CONTAINER_REGISTRY_ENDPOINT för miljövariabeln standard. Stöder ersättning av miljövariabler. |
image |
N | sträng | Namnet som tillämpas på den skapade containeravbildningen. Om det utelämnas är standardvärdet {appName}/{serviceName}-{environmentName}. Stöder ersättning av miljövariabler. |
tag |
N | sträng | Taggen som tillämpas på den skapade containeravbildningen. Om det utelämnas är standardvärdet azd-deploy-{unix time (seconds)}. Stöder ersättning av miljövariabler. |
buildArgs |
N | strängmatris | Skapa argument som ska skickas till docker build-kommandot. |
network |
N | sträng | Nätverksläget för RUN-instruktioner under docker-versionen.
--network Skickas som till docker build. Använd till exempel host för att tillåta att byggcontainern får åtkomst till värdnätverket. |
remoteBuild |
N | boolean | Om avbildningen ska byggas via fjärranslutning. Om värdet trueär inställt på skapas avbildningen via fjärranslutning med hjälp av fjärrversionen av Azure Container Registry. Om fjärrbygget misslyckas återgår azd du automatiskt till att skapa lokalt med Docker eller Podman om det är tillgängligt. |
k8s
(objekt) Konfigurationsalternativ för Azure Kubernetes Service (AKS). Endast giltigt när host är aks.
| Fastighet | Krävs | Typ | Beskrivning |
|---|---|---|---|
deploymentPath |
N | sträng | Den relativa sökvägen från tjänstsökvägen till distributionsmanifestet för k8s. Förvald: manifests. |
namespace |
N | sträng | K8s-namnområdet för de distribuerade resurserna. När det anges skapas ett nytt k8s-namnområde om det inte redan finns. Standard: projektnamn. |
deployment |
N | objekt | Konfiguration av k8s-distribution. Se Distributionskonfiguration. |
service |
N | objekt | Konfigurationen av k8s-tjänsten. Se Tjänstkonfiguration. |
ingress |
N | objekt | Ingresskonfigurationen för k8s. Se Ingress-konfiguration. |
helm |
N | objekt | Helm-konfigurationen. Se Helm-konfiguration. |
kustomize |
N | objekt | Kustomize-konfigurationen. Se Kustomize-konfiguration. |
Distributionskonfiguration
| Fastighet | Krävs | Typ | Beskrivning |
|---|---|---|---|
name |
N | sträng | Namnet på den k8s-distributionsresurs som ska användas under distributionen. Om den inte har angetts söker du efter en distributionsresurs i samma namnområde som innehåller tjänstnamnet. Standard: tjänstnamn. |
Tjänstkonfiguration
| Fastighet | Krävs | Typ | Beskrivning |
|---|---|---|---|
name |
N | sträng | Namnet på den k8s-tjänstresurs som ska användas som standardtjänstslutpunkt. Om den inte har angetts söker du efter en tjänstresurs i samma namnområde som innehåller tjänstnamnet. Standard: tjänstnamn. |
Ingresskonfiguration
| Fastighet | Krävs | Typ | Beskrivning |
|---|---|---|---|
name |
N | sträng | Namnet på den k8s-ingressresurs som ska användas som standardtjänstslutpunkt. Om den inte har angetts söker du efter en ingressresurs i samma namnområde som innehåller tjänstnamnet. Standard: tjänstnamn. |
relativePath |
N | sträng | Den relativa sökvägen till tjänsten från roten för ingresskontrollanten. När den har angetts läggs den till i roten för din ingressresurssökväg. |
Helm-konfiguration
| Fastighet | Krävs | Typ | Beskrivning |
|---|---|---|---|
repositories |
N | samling | De helm-lagringsplatser som ska läggas till. |
releases |
N | samling | Helm-versionerna som ska installeras. |
repositories matrisobjekt:
| Fastighet | Krävs | Typ | Beskrivning |
|---|---|---|---|
name |
Y | sträng | Namnet på helm-lagringsplatsen. |
url |
Y | sträng | URL:en för helm-lagringsplatsen. |
releases matrisobjekt:
| Fastighet | Krävs | Typ | Beskrivning |
|---|---|---|---|
name |
Y | sträng | Namnet på helm-versionen. |
chart |
Y | sträng | Namnet på helm-diagrammet. |
version |
N | sträng | Versionen av helm-diagrammet. |
namespace |
N | sträng | K8s-namnområdet för att installera helm-diagrammet. Standardvärdet är tjänstnamnområdet. |
values |
N | sträng | Relativ sökväg från tjänst till en values.yaml för att skicka till helm-diagrammet. |
Kustomize-konfiguration
| Fastighet | Krävs | Typ | Beskrivning |
|---|---|---|---|
dir |
N | sträng | Den relativa sökvägen till katalogen kustomize. Stöder ersättning av miljövariabler. |
edits |
N | strängmatris | Kustomize-redigeringarna som ska tillämpas före distributionen. Stöder ersättning av miljövariabler. |
env |
N | objekt | Miljönyckel/värdepar som används för att generera en .env fil i katalogen kustomize. Värden stöder miljövariabelersättning. |
Servicekopplingar
Hookar på tjänstnivå körs under händelser i tjänstens livscykel. Hooks ska matcha tjänsthändelsenamn som är prefixet med pre eller post. När du anger sökvägar bör de vara relativa till tjänstsökvägen. Mer information finns i Anpassa cli-arbetsflöden för Azure Developer med hjälp av kommando- och händelsekrokar.
Tjänstkrokar som stöds: prerestore, postrestore, prebuild, postbuild, prepackage, postpackage, prepublish, postpublish, predeploy, postdeploy.
Varje krok använder hookdefinitionsformatet .
Tjänstexempel
Alternativ för Container Apps med 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
Container Apps från en fördefinierad avbildning
services:
api:
image: myregistry.azurecr.io/myapp:latest
host: containerapp
AKS med krokar på servicenivå
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
(objekt) Definition av Azure-resurser som används av programmet. Varje nyckel är ett resursnamn och värdet är ett resurskonfigurationsobjekt. Resurser kan refereras av tjänster via egenskapen uses .
Vanliga resursegenskaper
| Fastighet | Krävs | Typ | Beskrivning |
|---|---|---|---|
type |
Y | sträng | Typ av resurs. Se Resurstyper. |
uses |
N | samling | Andra resurser som den här resursen är beroende av. |
existing |
N | boolean | När den här resursen är inställd truepå skapas den inte och används i stället för referensändamål. Förvald: false. |
Tip
Se Exempel på resurser för ett fullständigt YAML-exempel som kombinerar flera resurstyper.
Resurstyper
Egenskapen type avgör vilken typ av Azure-resurs och styr vilka ytterligare egenskaper som är tillgängliga.
| Typvärde | Beskrivning | Ytterligare egenskaper |
|---|---|---|
host.appservice |
Azure App Service-webbapp | Se host.appservice egenskaper. |
host.containerapp |
Docker-baserad containerapp | Se host.containerapp egenskaper. |
ai.openai.model |
En distribuerad ai-modell som är redo att användas | Se ai.openai.model egenskaper. |
ai.project |
Ett Microsoft Foundry-projekt med modeller | Se ai.project egenskaper. |
ai.search |
Azure AI-sökning | Se ai.search egenskaper. |
db.postgres |
Azure-databasen för PostgreSQL | Inga extra egenskaper. |
db.mysql |
Azure-databas för MySQL | Inga extra egenskaper. |
db.redis |
Azure-cache för Redis | Inga extra egenskaper. |
db.mongo |
Azure Cosmos DB för MongoDB | Inga extra egenskaper. |
db.cosmos |
Azure Cosmos DB för NoSQL | Se db.cosmos egenskaper. |
messaging.eventhubs |
Namnområde för Azure Event Hubs | Se messaging.eventhubs egenskaper. |
messaging.servicebus |
Azure Service Bus-namnområde | Se messaging.servicebus egenskaper. |
storage |
Azure Storage-konto | Se storage egenskaper. |
keyvault |
Azure 密钥保管库 | Se keyvault egenskaper. |
host.appservice egenskaper
| Fastighet | Krävs | Typ | Beskrivning |
|---|---|---|---|
port |
N | integer | Port som webbappen lyssnar på. Förvald: 80. |
runtime |
Y | objekt | Språkkörningskonfigurationen. Se nedan. |
env |
N | samling | Miljövariabler. Varje objekt har name (krävs), valueoch secret egenskaper. Stöder ersättning av miljövariabler. |
startupCommand |
N | sträng | Startkommando som körs som en del av start av webbappar. |
uses |
N | strängmatris | Andra resurser som den här resursen använder. |
runtime Objekt:
| Fastighet | Krävs | Typ | Beskrivning |
|---|---|---|---|
stack |
Y | sträng | Språkkörningsstacken. Tillåtna värden: node, python. |
version |
Y | sträng | Språkkörningsversionen. Formatet varierar beroende på stack (till exempel 22-lts för Node för 3.13 Python). |
resources:
web:
type: host.appservice
port: 8080
runtime:
stack: node
version: 22-lts
uses:
- db
host.containerapp egenskaper
| Fastighet | Krävs | Typ | Beskrivning |
|---|---|---|---|
port |
N | integer | Port som containerappen lyssnar på. Förvald: 80. |
env |
N | samling | Miljövariabler. Varje objekt har name (krävs), valueoch secret egenskaper. Stöder ersättning av miljövariabler. |
uses |
N | strängmatris | Andra resurser som den här resursen använder. |
ai.openai.model egenskaper
| Fastighet | Krävs | Typ | Beskrivning |
|---|---|---|---|
model |
Conditional | objekt | Den underliggande AI-modellen. Krävs när existing är false. |
existing |
N | boolean | När den här resursen är inställd truepå skapas den inte och används i stället för referensändamål. Förvald: false. |
model Objekt:
| Fastighet | Krävs | Typ | Beskrivning |
|---|---|---|---|
name |
Y | sträng | Namnet på AI-modellen. |
version |
Y | sträng | Versionen av AI-modellen. |
resources:
chatModel:
type: ai.openai.model
model:
name: gpt-4o
version: "2024-08-06"
ai.project egenskaper
| Fastighet | Krävs | Typ | Beskrivning |
|---|---|---|---|
models |
N | samling | AI-modellerna som ska distribueras som en del av AI-projektet. |
existing |
N | boolean | När den här resursen är inställd truepå skapas den inte och används i stället för referensändamål. Förvald: false. |
models matrisobjekt:
| Fastighet | Krävs | Typ | Beskrivning |
|---|---|---|---|
name |
Y | sträng | Namnet på AI-modellen. |
version |
Y | sträng | Versionen av AI-modellen. |
format |
Y | sträng | Formatet för AI-modellen (till exempel Microsoft, OpenAI). |
sku |
Y | objekt | SKU-konfigurationen för AI-modellen. |
sku Objekt:
| Fastighet | Krävs | Typ | Beskrivning |
|---|---|---|---|
name |
Y | sträng | Namnet på SKU:n (till exempel GlobalStandard). |
usageName |
Y | sträng | Användningsnamnet för SKU:n för faktureringsändamål (till exempel OpenAI.GlobalStandard.gpt-4o-mini). |
capacity |
Y | integer | Kapaciteten för SKU:n. |
ai.search egenskaper
| Fastighet | Krävs | Typ | Beskrivning |
|---|---|---|---|
existing |
N | boolean | När den här resursen är inställd truepå skapas den inte och används i stället för referensändamål. Förvald: false. |
db.cosmos egenskaper
| Fastighet | Krävs | Typ | Beskrivning |
|---|---|---|---|
containers |
N | samling | Containrar för att lagra data. Varje container lagrar en samling objekt. |
containers matrisobjekt:
| Fastighet | Krävs | Typ | Beskrivning |
|---|---|---|---|
name |
Y | sträng | Namnet på containern. |
partitionKeys |
Y | samling | De partitionsnycklar som används för att distribuera data mellan partitioner. Maximalt 3 nycklar. Förvald: /id. |
messaging.eventhubs egenskaper
| Fastighet | Krävs | Typ | Beskrivning |
|---|---|---|---|
hubs |
N | strängmatris | Hubbnamn som ska skapas i Event Hubs-namnområdet. |
existing |
N | boolean | När den här resursen är inställd truepå skapas den inte och används i stället för referensändamål. Förvald: false. |
messaging.servicebus egenskaper
| Fastighet | Krävs | Typ | Beskrivning |
|---|---|---|---|
queues |
N | strängmatris | Könamn som ska skapas i Service Bus-namnområdet. |
topics |
N | strängmatris | Ämnesnamn som ska skapas i Service Bus-namnområdet. |
existing |
N | boolean | När den här resursen är inställd truepå skapas den inte och används i stället för referensändamål. Förvald: false. |
storage egenskaper
| Fastighet | Krävs | Typ | Beskrivning |
|---|---|---|---|
containers |
N | strängmatris | Containernamn för Azure Storage-konto. |
existing |
N | boolean | När den här resursen är inställd truepå skapas den inte och används i stället för referensändamål. Förvald: false. |
keyvault egenskaper
| Fastighet | Krävs | Typ | Beskrivning |
|---|---|---|---|
existing |
N | boolean | När den här resursen är inställd truepå skapas den inte och används i stället för referensändamål. Förvald: false. |
Exempel på resurser
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
(objekt) Definition av pipeline för kontinuerlig integrering.
| Fastighet | Krävs | Typ | Beskrivning |
|---|---|---|---|
provider |
N | sträng | Pipelineprovidern som ska användas för kontinuerlig integrering. Förvald: github. Tillåtna värden: github, azdo. |
variables |
N | strängmatris |
azd Lista över miljövariabler som ska användas i pipelinen som variabler. |
secrets |
N | strängmatris |
azd Lista över miljövariabler som ska användas i pipelinen som hemligheter. |
pipeline:
provider: azdo
variables:
- CUSTOM_SETTING
secrets:
- API_KEY
hooks
(objekt) Kommandonivåkrokar. Hooks bör matcha azd kommandonamn som är prefix med pre eller post beroende på när skriptet ska köras. När du anger sökvägar bör de vara relativa till projektsökvägen. Mer information finns i Anpassa cli-arbetsflöden för Azure Developer med hjälp av kommando- och händelsekrokar.
Kommandokrokar som stöds: preprovision, postprovision, preinfracreate, postinfracreate, preinfradelete, postinfradelete, predown, postdown, preup, postup, prepackage, , postpackage, prepublish, postpublish, predeploy, postdeploy, prerestore. postrestore
Varje krok använder hookdefinitionsformatet .
Tip
Se Hook-exempel för kompletta YAML-exempel, inklusive plattformsspecifika krokar, typade utförare och flera krokar per händelse.
hooks:
preprovision:
shell: sh
run: ./scripts/setup.sh
postdeploy:
shell: sh
run: azd env set APP_URL ${SERVICE_WEB_ENDPOINT_URL}
Hook-definition
En krok kan vara ett enda krokobjekt eller en matris med krokobjekt. Varje hook-objekt har följande egenskaper:
| Fastighet | Krävs | Typ | Beskrivning |
|---|---|---|---|
run |
Conditional | sträng | Det infogade skriptet eller den relativa sökvägen för skriptet. Krävs när du shellanger , kind, dir, interactive, continueOnError, secretseller config. När du anger ett infogat skript måste du också ange vilken som shell ska användas. Gränssnittet härleds automatiskt när du använder filsökvägar. |
shell |
N | sträng | Typ av gränssnitt för att köra skript. Förvald: sh. Tillåtna värden: sh, pwsh. |
kind |
N | sträng | Körtyp för hook-skriptet. När den utelämnas identifieras typen automatiskt från filnamnstillägget run för sökvägen (till exempel .py blir python, .ps1 blir pwsh). Tillåtna värden: sh, pwsh, js, ts, python, dotnet. |
dir |
N | sträng | Arbetskatalog för hook-körning. Används som projektrot för beroendeinstallation och som arbetskatalog när skriptet körs. Relativa sökvägar matchas från projektet eller tjänstroten. När det utelämnas används som standard den katalog som innehåller skriptfilen. |
continueOnError |
N | boolean | Om ett skriptfel stoppar azd kommandot. Förvald: false. |
interactive |
N | boolean | Om skriptet körs i interaktivt läge, bindning till stdin, stdoutoch stderr för den konsol som körs. Förvald: false. |
windows |
N | objekt | När detta anges åsidosätter du hook-konfigurationen när den körs i Windows-miljöer. Använder samma hook-objektformat. |
posix |
N | objekt | När detta anges åsidosätter du hook-konfigurationen när den körs i POSIX-miljöer (Linux och macOS). Använder samma hook-objektformat. |
secrets |
N | objekt | En karta över azd miljövariabler för att koppla hemligheter. Om en variabel angavs som en hemlighet i miljön skickas det hemliga värdet till kroken. |
config |
N | objekt | Körspecifik konfiguration. Vilka egenskaper som är tillgängliga beror på värdet kind . Se Konfiguration av hook executor. |
Note
När både windows och posix anges runkan egenskaperna , shell, kind, dir, interactive, continueOnError, secretsoch config inte användas på den översta nivån. Använd plattformsspecifika objekt i stället.
Konfiguration av hook executor
Egenskapen config accepterar olika egenskaper beroende på värdet kind .
JavaScript- och TypeScript-konfiguration (js, ts)
| Fastighet | Krävs | Typ | Beskrivning |
|---|---|---|---|
packageManager |
N | sträng | Pakethanteraren som ska användas för beroendeinstallation. Åsidosätter automatisk identifiering från låsfiler. Tillåtna värden: npm, pnpm, yarn. |
Python-konfiguration
| Fastighet | Krävs | Typ | Beskrivning |
|---|---|---|---|
virtualEnvName |
N | sträng | Katalognamnet för den virtuella Python-miljön. Standardvärdet är automatisk identifiering (.venv, venv) eller {baseName}_env. |
.NET-konfiguration (dotnet)
| Fastighet | Krävs | Typ | Beskrivning |
|---|---|---|---|
configuration |
N | sträng | MSBuild-konfigurationen för att skapa hook-skriptet (till exempel Debug, Release). |
framework |
N | sträng | Målramverkets moniker för att skapa och köra hook-skriptet (till exempel net8.0, net10.0). |
Shell (sh, pwsh) config
Shell-utförare stöder config för närvarande inte egenskaper.
Krokexempel
Plattformsspecifika krokar
hooks:
preprovision:
windows:
shell: pwsh
run: ./scripts/setup.ps1
posix:
shell: sh
run: ./scripts/setup.sh
Python-krok med typ
hooks:
postprovision:
kind: python
run: ./scripts/seed-data.py
dir: ./scripts
config:
virtualEnvName: .venv
Flera krokar för en enskild händelse
hooks:
postprovision:
- shell: sh
run: ./scripts/step1.sh
- shell: sh
run: ./scripts/step2.sh
requiredVersions
(objekt) Tillhandahåller ytterligare konfiguration för nödvändiga versioner av azd och tillägg.
| Fastighet | Krävs | Typ | Beskrivning |
|---|---|---|---|
azd |
N | sträng | Ett antal versioner av azd som stöds för det här projektet. Om versionen av azd ligger utanför det här intervallet kan projektet inte läsas in. Stöder semverintervallsyntax. |
extensions |
N | objekt | En karta över nödvändiga tillägg och versionsbegränsningar för det här projektet. Stöder semverbegränsningar. Om versionen utelämnas installeras den senaste versionen. |
requiredVersions:
azd: ">= 0.6.0-beta.3"
extensions:
azure.ai.agents: ">=1.0.0"
my-extension: latest
state
(objekt) Tillhandahåller ytterligare konfiguration för tillståndshantering.
| Fastighet | Krävs | Typ | Beskrivning |
|---|---|---|---|
remote |
N | objekt | Tillhandahåller ytterligare konfiguration för fjärrtillståndshantering. Se även state.remote. |
state.remote
| Fastighet | Krävs | Typ | Beskrivning |
|---|---|---|---|
backend |
Y | sträng | Fjärrtillståndets serverdelstyp. Förvald: AzureBlobStorage. Tillåtna värden: AzureBlobStorage. |
config |
Conditional | objekt | Serverdelsspecifik konfiguration. Krävs när backend är AzureBlobStorage. Se Konfiguration av Azure Blob Storage. |
Azure Blob Storage-konfiguration
| Fastighet | Krävs | Typ | Beskrivning |
|---|---|---|---|
accountName |
Y | sträng | Azure Storage-kontonamnet. |
containerName |
N | sträng | Containernamnet för Azure Storage. Standardvärdet är projektnamnet om det inte anges. |
endpoint |
N | sträng | Azure Storage-slutpunkten. Förvald: blob.core.windows.net. |
state:
remote:
backend: AzureBlobStorage
config:
accountName: mystorageaccount
containerName: azd-state
platform
(objekt) Ger ytterligare konfiguration för plattformsspecifika funktioner som Azure Dev Center.
| Fastighet | Krävs | Typ | Beskrivning |
|---|---|---|---|
type |
Y | sträng | Plattformstypen. Tillåtna värden: devcenter. |
config |
N | objekt | Plattformsspecifik konfiguration. Se Dev Center-konfiguration. |
Dev Center-konfiguration
Tillgängligt när type är devcenter:
| Fastighet | Krävs | Typ | Beskrivning |
|---|---|---|---|
name |
N | sträng | Namnet på Azure Dev Center. Används som standardutvecklingscenter för det här projektet. |
project |
N | sträng | Namnet på Azure Dev Center-projektet. |
catalog |
N | sträng | Namnet på Azure Dev Center-katalogen. |
environmentDefinition |
N | sträng | Namnet på dev center-katalogmiljödefinitionen. |
environmentType |
N | sträng | Projektmiljötypen Dev Center som används för distributionsmiljön. |
platform:
type: devcenter
config:
name: my-devcenter
project: my-project
catalog: my-catalog
environmentDefinition: my-env-def
environmentType: dev
workflows
(objekt) Tillhandahåller ytterligare konfiguration för arbetsflöden, till exempel åsidosättande azd up beteende.
| Fastighet | Krävs | Typ | Beskrivning |
|---|---|---|---|
up |
N | objekt eller matris | När det anges åsidosätter standardbeteendet för azd up arbetsflödet. |
Arbetsflödessteg
Arbetsflödet up accepterar en steps matris (eller kan anges direkt som en matris). Varje steg kör ett azd kommando.
| Fastighet | Krävs | Typ | Beskrivning |
|---|---|---|---|
azd |
Y | sträng eller objekt | Kommandot azd som ska köras. Kan vara en sträng (till exempel provision) eller ett objekt med en args matris. |
Konfigurera arbetsflödets stegordning
azure.yaml Följande fil ändrar standardbeteendet azd up för att flytta azd package steget efter stegetazd provision. Använd den här metoden i scenarier där du behöver känna till URL:er för resurser under bygg- eller paketeringsprocessen.
name: todo-nodejs-mongo
metadata:
template: todo-nodejs-mongo@0.0.1-beta
workflows:
up:
steps:
- azd: provision
- azd: package
- azd: deploy --all
cloud
(objekt) Tillhandahåller ytterligare konfiguration för distribution till nationella moln, till exempel Azure Government. Standardmolnet är AzureCloud.
| Fastighet | Krävs | Typ | Beskrivning |
|---|---|---|---|
name |
N | sträng | Namnet på molnmiljön. Tillåtna värden: AzureCloud, AzureChinaCloud, AzureUSGovernment. |
cloud:
name: AzureUSGovernment
Begär hjälp
Information om hur du skickar in en bugg, begär hjälp eller föreslår en ny funktion för Azure Developer CLI finns på sidan felsökning och support.