Azure Geliştirici CLI şema başvurusu

Dosya azure.yaml , Azure Geliştirici CLI (azd) projeleri için yapılandırma dosyasıdır. Uygulamanızı oluşturan hizmetleri, Azure kaynaklarını, altyapıyı, kancaları ve CI/CD işlem hattını tanımlamak için projenizin köküne yerleştirin. , azd upveya azd provisiongibi azd deploykomutları çalıştırdığınızda CLI, uygulamanızın yapısını ve Azure'a nasıl dağıtılacağı hakkında bilgi edinmek için bu dosyayı okur.

Bu makale , azure.yaml şeması için eksiksiz bir başvurudur. Şablonları kullanmaya başlamak azd için bkz. Azure Geliştirici CLI şablonlarına genel bakış.

Örnek

Aşağıda, şablon için bir azure.yaml dosyanın genel bir örneği verilmiştir azd . Gerçek dünya örneği için azure.yaml öğesine bakın:

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

Üst düzey özellikler

Öğe Adı Gerekli Tür Açıklama
name Y dizgi Uygulama adı. Yalnızca küçük harflere, sayılara ve kısa çizgilere (-) izin verilir. Ad bir harf veya numarayla başlayıp bitmelidir.
resourceGroup N dizgi Azure kaynak grubunun adı. Belirtildiğinde, altyapı sağlama için kullanılan kaynak grubu adını geçersiz kılar. Ortam değişkeni değişimini destekler.
metadata N nesne Uygulama şablonu hakkındaki meta veriler.
infra N nesne Azure altyapısı sağlama için ek yapılandırma sağlar.
services N nesne Uygulamayı oluşturan hizmetlerin tanımı.
resources N nesne Uygulama tarafından kullanılan Azure kaynaklarının tanımı.
pipeline N nesne Sürekli tümleştirme işlem hattının tanımı.
hooks N nesne Komutlar için azd komut düzeyi kancaları.
requiredVersions N nesne ve uzantılarının azd gerekli sürümleri için ek yapılandırma sağlar.
state N nesne Durum yönetimi için ek yapılandırma sağlar.
platform N nesne Azure Dev Center gibi platforma özgü özellikler için ek yapılandırma sağlar.
workflows N nesne İş akışları için davranışı geçersiz kılma azd up gibi ek yapılandırma sağlar.
cloud N nesne Bağımsız bulutlara dağıtmak için ek yapılandırma sağlar. Varsayılan bulut şeklindedir AzureCloud.

name

(dize, gerekli) Uygulama adı. Yalnızca küçük harflere, sayılara ve kısa çizgilere (-) izin verilir. Ad bir harf veya numarayla başlayıp bitmelidir. En az uzunluk: 2 karakter.

name: my-app

resourceGroup

(dize) Azure kaynak grubunun adı. Belirtildiğinde, altyapı sağlama için kullanılan kaynak grubu adını geçersiz kılar. Ortam değişkeni değişimini destekler. 3 ile 64 karakter arasında olmalıdır.

resourceGroup: rg-my-app-${AZURE_ENV_NAME}

metadata

(nesne) Uygulama şablonu hakkındaki meta veriler.

Mülkiyet Gerekli Tür Açıklama
template N dizgi Uygulamanın oluşturulduğu şablonun tanımlayıcısı.
metadata:
  template: todo-nodejs-mongo@0.0.1-beta

infra

(nesne) Azure altyapısı sağlama için ek yapılandırma sağlar.

Mülkiyet Gerekli Tür Açıklama
provider N dizgi Uygulama için Azure kaynaklarını sağlamak için kullanılan altyapı sağlama sağlayıcısı. Varsayılan: bicep. İzin verilen değerler: bicep, terraform.
path N dizgi Belirtilen sağlayıcı için Azure sağlama şablonlarının göreli klasör yolu. Varsayılan: infra.
module N dizgi Azure sağlama şablonlarındaki varsayılan modülün adı. Varsayılan: main.
layers N dizi Azure altyapısı sağlama katmanları. Bkz. infra.layers.

Note

layers En az bir öğeyle belirtildiğinde path ve module özellikleri kullanılamaz. Bunun yerine katmana özgü path ve module değerleri kullanın.

infra.layers

(nesne dizisi) Azure altyapısı için sağlama katmanlarını tanımlar. Her katman bağımsız bir sağlama birimini temsil eder.

Mülkiyet Gerekli Tür Açıklama
name Y dizgi Sağlama katmanının adı.
path Y dizgi Belirtilen sağlayıcı için Azure sağlama şablonlarının göreli klasör yolu.
module N dizgi Kaynakları sağlarken kullanılan Azure sağlama modülünün adı. Varsayılan: main.
dependsOn N stringler dizisi Bu katmanın bağlı olduğu diğer katmanların adları. Statik çözümleyicinin içeriklerden.parameters.json / / .bicep.bicepparam çıkaramayan kanca aracılı bağımlılıkları bildirmek için kullanın (örneğin, postprovision başka bir katmandaki bir kanca, bu katmanın bicepparam tarafından sağlama zamanında azdokunduğu bir env var'ı yazdığında).
hooks N nesne Katman kancaları sağlama. Destekler preprovision ve postprovision kancalar. Yolları belirtirken, bunlar katman yoluna göre olmalıdır. Bkz . Kanca tanımı.
infra:
  provider: bicep
  layers:
    - name: core
      path: ./infra/core
    - name: services
      path: ./infra/services
      dependsOn:
        - core
      hooks:
        postprovision:
          shell: sh
          run: ./scripts/post-provision.sh

IaC sağlayıcı örneği olarak Terraform

Bicep yerine Terraform kullanmak için olarak ayarlayın providerterraform. Daha fazla bilgi için bkz . Terraform'ı IaC sağlayıcısı olarak kullanma.

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

(nesne) Uygulamayı oluşturan hizmetlerin tanımı. Her anahtar bir hizmet adıdır ve değer bir hizmet yapılandırma nesnesidir.

Hizmet özellikleri

Mülkiyet Gerekli Tür Açıklama
host Y dizgi Hizmet uygulaması için kullanılan Azure kaynağının türü. Bkz. Konak türleri.
project Conditional dizgi Hizmet kaynak kodu dizininin yolu. Çoğu konak türü için gereklidir.
image Conditional dizgi Kaynaktan oluşturmak yerine kapsayıcı görüntüsü için kullanılacak kaynak görüntü. Ortam değişkeni değişimini destekler. Yalnızca konak için containerapp geçerlidir.
language N dizgi Hizmet uygulama dili. İzin verilen değerler: dotnet, csharp, fsharp, py, pythonjstsjavadocker.
module N dizgi Hizmeti kök infra klasörüne göre dağıtmak için kullanılan altyapı modülünün yolu. Belirtilmezse, CLI modül adının hizmet adıyla aynı olduğunu varsayar.
dist N dizgi Hizmet dağıtımı yapıtlarının göreli yolu.
resourceName N dizgi Hizmeti uygulayan Azure kaynağının adı. Varsayılan olarak CLI, geçerli hizmetin adına ayarlanmış etikete azd-service-name sahip Azure kaynağını bulur. Ortam değişkeni değişimini destekler.
resourceGroup N dizgi Kaynağı içeren Azure kaynak grubunun adı. Belirtildiğinde, CLI belirtilen kaynak grubu içindeki Azure kaynağını bulur. Ortam değişkeni değişimini destekler.
remoteBuild N boolean İşlev uygulaması dağıtımı için uzak derlemenin kullanılıp kullanılmaymayacağı. Yalnızca olduğunda hostfunctiongeçerlidir. olarak trueayarlandığında, dağıtım paketi Oryx kullanılarak uzaktan oluşturulur. true JavaScript, TypeScript ve Python işlev uygulamaları için varsayılan olarak kullanılır.
docker N nesne Docker yapılandırması. Yalnızca kapsayıcı tabanlı konaklar için geçerlidir. Bkz. docker.
k8s N nesne AKS yapılandırma seçenekleri. Yalnızca olduğunda hostaksgeçerlidir. Bkz. k8s.
config N nesne Hizmet için ek yapılandırma seçenekleri.
uses N dizi Bu hizmetin bağımlı olduğu hizmet adlarının ve kaynak adlarının listesi.
env N nesne Ortam değişkeni adlarının değerlerle eşlemini. Ortam değişkeni değişimini destekler.
apiVersion N dizgi Dağıtımlar için kaynak sağlayıcısı API sürümü. Yalnızca olduğunda hostcontainerappgeçerlidir.
hooks N nesne Hizmet düzeyi kancaları. Bkz . Hizmet kancaları.

Tip

Farklı hizmet yapılandırmalarının eksiksiz YAML örnekleri için bkz. Hizmet örnekleri.

Konak türleri

host özelliği, hizmet uygulaması için kullanılan Azure kaynağının türünü belirler ve diğer hangi özelliklerin geçerli olduğunu denetler.

Konak değeri Açıklama Gerektirir project Destekle -yen image Destekle -yen docker Destekle -yen k8s Destekle -yen env Destekle -yen apiVersion
appservice Azure App Service Y N N N N N
containerapp Azure Konteyner Uygulamaları project veya image (ikisini birden değil) Y Y N Y Y
function Azure İşlevleri Y N N N N N
staticwebapp Azure Statik Web Uygulamaları Y N N N N N
springapp Azure Bahar Uygulamaları Y N N N N N
aks Azure Kubernetes Service N N Y Y N N
ai.endpoint Azure AI çevrimiçi uç noktası Y N Y N N N
azure.ai.agent Azure AI Aracısı Y N Y N N N

Note

springapp desteği için alfa özelliklerine katılmanız gerekir. Daha fazla bilgi için bkz . Alfa özellikleri.

Note

olduğunda hostcontainerapp, ya da imageprojectsağlamanız gerekir, ancak ikisini birden sağlamamalısınız. Ayarlanırsa image , kapsayıcı belirtilen görüntüden dağıtılır. Ayarlanırsa project , kapsayıcı görüntüsü kaynaktan oluşturulur.

ai.endpoint Config

(nesne, olduğunda hostai.endpointgereklidir) Azure AI çevrimiçi uç nokta dağıtımı için ek yapılandırma sağlar.

Mülkiyet Gerekli Tür Açıklama
workspace N dizgi AI Studio proje çalışma alanının adı. Atlandığında ortam azd değişkeninde AZUREAI_PROJECT_NAME belirtilen değeri kullanır. Ortam değişkeni değişimini destekler.
flow N nesne Azure AI Studio prompt Flow yapılandırması. Atlandığında, bir istem akışı oluşturulmaz. Bkz. Yapay zeka bileşeni yapılandırması.
environment N nesne Azure AI Studio özel ortam yapılandırması. Atlandığında, özel bir ortam oluşturulmaz. Bkz. Yapay zeka bileşeni yapılandırması.
model N nesne Azure AI Studio model yapılandırması. Atlandığında model oluşturulmaz. Bkz. Yapay zeka bileşeni yapılandırması.
deployment Y nesne Azure AI Studio çevrimiçi uç nokta dağıtım yapılandırması. Yeni bir çevrimiçi uç nokta dağıtımı oluşturulur ve başarıyla tamamlandıktan sonra trafik otomatik olarak yeni dağıtıma kaydırılır. Bkz. Yapay zeka dağıtım yapılandırması.

Note

olduğunda hostai.endpoint, hem hem project de config gereklidir. Gerekli yapılandırma özellikleri için yapılandırma bölümüne bakınai.endpoint.

Yapay zeka bileşeni yapılandırması
Mülkiyet Gerekli Tür Açıklama
name N dizgi Yapay zeka bileşeninin adı. Atlandığında, azd bileşen türüne ve hizmet adına göre bir ad oluşturur. Ortam değişkeni değişimini destekler.
path Y dizgi Yapay zeka bileşeni yapılandırma dosyasının veya kaynak kodunun yolu.
overrides N nesne Yapay zeka bileşeni yapılandırmasını geçersiz kılmak için kullanılan anahtar değer çiftlerinin haritası. Ortam değişkeni değişimini destekler.
Yapay zeka dağıtım yapılandırması

Tüm özellikleri yapay zeka bileşeni yapılandırmasından devralır ve ayrıca:

Mülkiyet Gerekli Tür Açıklama
environment N nesne Dağıtım için ortam değişkenleri olarak ayarlanacağı anahtar/değer çiftlerinin haritası. Değerler işletim sistemi ve azd ortam değişkeni değişimini destekler.
services:
  myendpoint:
    project: ./src/endpoint
    host: ai.endpoint
    config:
      workspace: my-ai-project
      deployment:
        path: ./deployment
        environment:
          MODEL_NAME: ${AZURE_OPENAI_MODEL}

docker

(nesne) Bir hizmet için Docker yapılandırması. Yalnızca kapsayıcıları (containerapp, aks, , ai.endpointazure.ai.agent) destekleyen konaklar için geçerlidir.

Mülkiyet Gerekli Tür Açıklama
path N dizgi Hizmetinize göre Dockerfile yolu. Varsayılan: ./Dockerfile.
context N dizgi Docker derleme bağlamı. Belirtildiğinde, varsayılan bağlamı geçersiz kılar. Varsayılan: ..
platform N dizgi Platform hedefi. Varsayılan: amd64.
registry N dizgi Görüntüyü göndermek için kapsayıcı kayıt defteri. Atlanırsa, ortam değişkeninin AZURE_CONTAINER_REGISTRY_ENDPOINT değerini varsayılan olarak kullanır. Ortam değişkeni değişimini destekler.
image N dizgi Yerleşik kapsayıcı görüntüsüne uygulanan ad. Atlanırsa, varsayılan olarak olur {appName}/{serviceName}-{environmentName}. Ortam değişkeni değişimini destekler.
tag N dizgi Yerleşik kapsayıcı görüntüsüne uygulanan etiket. Atlanırsa, varsayılan olarak olur azd-deploy-{unix time (seconds)}. Ortam değişkeni değişimini destekler.
buildArgs N stringler dizisi Docker build komutuna geçirmek için derleme bağımsız değişkenleri.
network N dizgi Docker derlemesi sırasında RUN yönergeleri için ağ modu. Docker derlemesi olarak --network geçirildi. Örneğin, derleme kapsayıcısının konak ağına erişmesine izin vermek için kullanın host .
remoteBuild N boolean Görüntünün uzaktan derlenip derlenmeyeceği. olarak ayarlanırsa true, görüntü Azure Container Registry uzak derleme özelliği kullanılarak uzaktan oluşturulur. Uzak derleme başarısız olursa, azd varsa Docker veya Podman kullanarak otomatik olarak yerel olarak derlemeye geri döner.

k8s

(nesne) Azure Kubernetes Service (AKS) yapılandırma seçenekleri. Yalnızca olduğunda hostaksgeçerlidir.

Mülkiyet Gerekli Tür Açıklama
deploymentPath N dizgi Hizmet yolundan k8s dağıtım bildirimlerine göreli yol. Varsayılan: manifests.
namespace N dizgi Dağıtılan kaynakların k8s ad alanı. Belirtildiğinde, henüz mevcut değilse yeni bir k8s ad alanı oluşturulur. Varsayılan: proje adı.
deployment N nesne K8s dağıtım yapılandırması. Bkz . Dağıtım yapılandırması.
service N nesne K8s hizmet yapılandırması. Bkz . Hizmet yapılandırması.
ingress N nesne K8s giriş yapılandırması. Bkz. Giriş yapılandırması.
helm N nesne Helm yapılandırması. Bkz. Helm yapılandırması.
kustomize N nesne Kustomize yapılandırması. Bkz . Kustomize yapılandırması.
Dağıtım yapılandırması
Mülkiyet Gerekli Tür Açıklama
name N dizgi Dağıtım sırasında kullanılacak k8s dağıtım kaynağının adı. Ayarlanmadıysa, hizmet adını içeren aynı ad alanında bir dağıtım kaynağı arar. Varsayılan: hizmet adı.
Hizmet yapılandırması
Mülkiyet Gerekli Tür Açıklama
name N dizgi Varsayılan hizmet uç noktası olarak kullanılacak k8s hizmet kaynağının adı. Ayarlanmadıysa, hizmet adını içeren aynı ad alanında bir hizmet kaynağı arar. Varsayılan: hizmet adı.
Giriş yapılandırması
Mülkiyet Gerekli Tür Açıklama
name N dizgi Varsayılan hizmet uç noktası olarak kullanılacak k8s giriş kaynağının adı. Ayarlanmadıysa, hizmet adını içeren aynı ad alanında bir giriş kaynağı arar. Varsayılan: hizmet adı.
relativePath N dizgi Giriş denetleyicinizin kökünden hizmetin göreli yolu. Ayarlandığında, giriş kaynak yolunuzun köküne eklenir.
Helm yapılandırması
Mülkiyet Gerekli Tür Açıklama
repositories N dizi Eklenecek helm depoları.
releases N dizi Helm, yüklenecek şekilde serbest bırakır.

repositories dizi öğeleri:

Mülkiyet Gerekli Tür Açıklama
name Y dizgi Helm deposunun adı.
url Y dizgi Helm deposunun URL'si.

releases dizi öğeleri:

Mülkiyet Gerekli Tür Açıklama
name Y dizgi Helm sürümünün adı.
chart Y dizgi Helm grafiğinin adı.
version N dizgi Helm grafiğinin sürümü.
namespace N dizgi Helm grafiğini yüklemek için k8s ad alanı. Varsayılan olarak hizmet ad alanıdır.
values N dizgi Helm grafiğine geçirmek için hizmetten a'ya values.yaml göreli yol.
Kustomize yapılandırması
Mülkiyet Gerekli Tür Açıklama
dir N dizgi Kustomize dizininin göreli yolu. Ortam değişkeni değişimini destekler.
edits N stringler dizisi Kustomize, dağıtımdan önce uygulanacak düzenlemeleri gerçekleştirir. Ortam değişkeni değişimini destekler.
env N nesne Kustomize dizininde bir .env dosya oluşturmak için kullanılan ortam anahtarı/değer çiftleri. Değerler ortam değişkeni değişimini destekler.

Hizmet bağlantı noktaları

Hizmet düzeyi kancaları, hizmet yaşam döngüsü olayları sırasında yürütülür. Kancalar veya preön ekli hizmet olay adlarıyla post eşleşmelidir. Yolları belirtirken, hizmet yoluna göre olmalıdır. Daha fazla ayrıntı için bkz. Komut ve olay kancalarını kullanarak Azure Geliştirici CLI iş akışlarınızı özelleştirme.

Desteklenen hizmet kancaları: prerestore, postrestore, prebuild, , postbuild, prepackage, postpackage, prepublishpostpublishpredeploy, . postdeploy

Her kanca Kanca tanımı biçimini kullanır.

Hizmet örnekleri

Docker seçenekleriyle Kapsayıcı Uygulamaları
services:
  api:
    project: ./src/api
    language: js
    host: containerapp
    docker:
      path: ./Dockerfile
      context: ../
  web:
    project: ./src/web
    language: js
    host: containerapp
    docker:
      remoteBuild: true
Önceden oluşturulmuş bir görüntüden Container Apps
services:
  api:
    image: myregistry.azurecr.io/myapp:latest
    host: containerapp
Hizmet düzeyi kancaları olan AKS
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

(nesne) Uygulama tarafından kullanılan Azure kaynaklarının tanımı. Her anahtar bir kaynak adıdır ve değer bir kaynak yapılandırma nesnesidir. Kaynaklara özelliği aracılığıyla uses hizmetler tarafından başvurulabilir.

Ortak kaynak özellikleri

Mülkiyet Gerekli Tür Açıklama
type Y dizgi Kaynağın türü. Bkz . Kaynak türleri.
uses N dizi Bu kaynağın bağımlı olduğu diğer kaynaklar.
existing N boolean olarak ayarlandığında true, bu kaynak oluşturulmaz ve bunun yerine başvuru amacıyla kullanılır. Varsayılan: false.

Tip

Birden çok kaynak türünü birleştiren eksiksiz bir YAML örneği için bkz . Kaynaklar örneği .

Kaynak türleri

type özelliği, Azure kaynağının türünü belirler ve hangi ek özelliklerin kullanılabilir olduğunu denetler.

Tür değeri Açıklama Ek özellikler
host.appservice Azure App Service web uygulaması Bkz. host.appservice özellikler.
host.containerapp Docker tabanlı kapsayıcı uygulaması Bkz. host.containerapp özellikler.
ai.openai.model Dağıtılan, kullanıma hazır bir yapay zeka modeli Bkz. ai.openai.model özellikler.
ai.project Modelleri olan bir Microsoft Foundry projesi Bkz. ai.project özellikler.
ai.search Azure Yapay Zeka Arama Bkz. ai.search özellikler.
db.postgres PostgreSQL için Azure Veritabanı Ek özellik yok.
db.mysql MySQL için Azure Veritabanı Ek özellik yok.
db.redis Redis için Azure Cache Ek özellik yok.
db.mongo MongoDB için Azure Cosmos DB Ek özellik yok.
db.cosmos NoSQL için Azure Cosmos DB Bkz. db.cosmos özellikler.
messaging.eventhubs Azure Event Hubs ad alanı Bkz. messaging.eventhubs özellikler.
messaging.servicebus Azure Service Bus ad alanı Bkz. messaging.servicebus özellikler.
storage Azure Depolama Hesabı Bkz. storage özellikler.
keyvault Azure Key Vault Bkz. keyvault özellikler.

host.appservice özellikleri

Mülkiyet Gerekli Tür Açıklama
port N integer Web uygulamasının dinlediğini bağlantı noktası. Varsayılan: 80.
runtime Y nesne Dil çalışma zamanı yapılandırması. Aşağıya bakın.
env N dizi Ortam değişkenleri. Her öğenin (gerekli), nameve value özellikleri vardır secret . Ortam değişkeni değişimini destekler.
startupCommand N dizgi Web uygulaması başlatmanın bir parçası olarak çalışan başlangıç komutu.
uses N stringler dizisi Bu kaynağın kullandığı diğer kaynaklar.

runtime Nesne:

Mülkiyet Gerekli Tür Açıklama
stack Y dizgi Dil çalışma zamanı yığını. İzin verilen değerler: node, python.
version Y dizgi Dil çalışma zamanı sürümü. Biçim yığına göre değişir (örneğin, 22-lts Node için, 3.13 Python için).
resources:
  web:
    type: host.appservice
    port: 8080
    runtime:
      stack: node
      version: 22-lts
    uses:
      - db

host.containerapp özellikleri

Mülkiyet Gerekli Tür Açıklama
port N integer Kapsayıcı uygulamasının dinlediğini bağlantı noktası. Varsayılan: 80.
env N dizi Ortam değişkenleri. Her öğenin (gerekli), nameve value özellikleri vardır secret . Ortam değişkeni değişimini destekler.
uses N stringler dizisi Bu kaynağın kullandığı diğer kaynaklar.

ai.openai.model özellikleri

Mülkiyet Gerekli Tür Açıklama
model Conditional nesne Temel alınan yapay zeka modeli. existing false olduğunda gereklidir.
existing N boolean olarak ayarlandığında true, bu kaynak oluşturulmaz ve bunun yerine başvuru amacıyla kullanılır. Varsayılan: false.

model Nesne:

Mülkiyet Gerekli Tür Açıklama
name Y dizgi Yapay zeka modelinin adı.
version Y dizgi Yapay zeka modelinin sürümü.
resources:
  chatModel:
    type: ai.openai.model
    model:
      name: gpt-4o
      version: "2024-08-06"

ai.project özellikleri

Mülkiyet Gerekli Tür Açıklama
models N dizi Yapay zeka projesi kapsamında dağıtılacak yapay zeka modelleri.
existing N boolean olarak ayarlandığında true, bu kaynak oluşturulmaz ve bunun yerine başvuru amacıyla kullanılır. Varsayılan: false.

models dizi öğeleri:

Mülkiyet Gerekli Tür Açıklama
name Y dizgi Yapay zeka modelinin adı.
version Y dizgi Yapay zeka modelinin sürümü.
format Y dizgi Yapay zeka modelinin biçimi (örneğin, Microsoft, OpenAI).
sku Y nesne Yapay zeka modeli için SKU yapılandırması.

sku Nesne:

Mülkiyet Gerekli Tür Açıklama
name Y dizgi SKU'nun adı (örneğin, GlobalStandard).
usageName Y dizgi Faturalama amacıyla SKU'nun kullanım adı (örneğin, OpenAI.GlobalStandard.gpt-4o-mini).
capacity Y integer SKU'nun kapasitesi.

ai.search özellikleri

Mülkiyet Gerekli Tür Açıklama
existing N boolean olarak ayarlandığında true, bu kaynak oluşturulmaz ve bunun yerine başvuru amacıyla kullanılır. Varsayılan: false.

db.cosmos özellikleri

Mülkiyet Gerekli Tür Açıklama
containers N dizi Verileri depolamak için kapsayıcılar. Her kapsayıcı bir öğe koleksiyonu depolar.

containers dizi öğeleri:

Mülkiyet Gerekli Tür Açıklama
name Y dizgi Kapsayıcının adı.
partitionKeys Y dizi Verileri bölümler arasında dağıtmak için kullanılan bölüm anahtarları. En fazla 3 tuş. Varsayılan: /id.

messaging.eventhubs özellikleri

Mülkiyet Gerekli Tür Açıklama
hubs N stringler dizisi Event Hubs ad alanında oluşturulacak hub adları.
existing N boolean olarak ayarlandığında true, bu kaynak oluşturulmaz ve bunun yerine başvuru amacıyla kullanılır. Varsayılan: false.

messaging.servicebus özellikleri

Mülkiyet Gerekli Tür Açıklama
queues N stringler dizisi Service Bus ad alanında oluşturulacak kuyruk adları.
topics N stringler dizisi Service Bus ad alanında oluşturulacak konu adları.
existing N boolean olarak ayarlandığında true, bu kaynak oluşturulmaz ve bunun yerine başvuru amacıyla kullanılır. Varsayılan: false.

storage özellikleri

Mülkiyet Gerekli Tür Açıklama
containers N stringler dizisi Azure Depolama Hesabı kapsayıcı adları.
existing N boolean olarak ayarlandığında true, bu kaynak oluşturulmaz ve bunun yerine başvuru amacıyla kullanılır. Varsayılan: false.

keyvault özellikleri

Mülkiyet Gerekli Tür Açıklama
existing N boolean olarak ayarlandığında true, bu kaynak oluşturulmaz ve bunun yerine başvuru amacıyla kullanılır. Varsayılan: false.

Kaynaklar örneği

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

(nesne) sürekli tümleştirme işlem hattının tanımı.

Mülkiyet Gerekli Tür Açıklama
provider N dizgi Sürekli tümleştirme için kullanılacak işlem hattı sağlayıcısı. Varsayılan: github. İzin verilen değerler: github, azdo.
variables N stringler dizisi azd İşlem hattında değişken olarak kullanılacak ortam değişkenlerinin listesi.
secrets N stringler dizisi azd İşlem hattında gizli dizi olarak kullanılacak ortam değişkenlerinin listesi.
pipeline:
  provider: azdo
  variables:
    - CUSTOM_SETTING
  secrets:
    - API_KEY

hooks

(nesne) Komut düzeyi kancaları. Kancalar, betiğin ne zaman yürütülmesi gerektiğine bağlı olarak azd veya pre ön ekli post komut adlarıyla eşleşmelidir. Yollar belirtilirken, bunlar proje yoluna göre olmalıdır. Daha fazla ayrıntı için bkz. Komut ve olay kancalarını kullanarak Azure Geliştirici CLI iş akışlarınızı özelleştirme.

Desteklenen komut kancaları: preprovision, postprovision, preinfracreate, , postinfracreate, preinfradelete, postinfradelete, , predown, postdown, preuppostupprepackagepostpackageprepublishpostpublishpredeploypostdeployprerestore. postrestore

Her kanca Kanca tanımı biçimini kullanır.

Tip

Platforma özgü kancalar, yazılan yürütücüler ve olay başına birden çok kanca gibi eksiksiz YAML örnekleri için bkz. Kanca örnekleri .

hooks:
  preprovision:
    shell: sh
    run: ./scripts/setup.sh
  postdeploy:
    shell: sh
    run: azd env set APP_URL ${SERVICE_WEB_ENDPOINT_URL}

Kanca tanımı

Kanca tek bir kanca nesnesi veya bir dizi kanca nesnesi olabilir. Her kanca nesnesi aşağıdaki özelliklere sahiptir:

Mülkiyet Gerekli Tür Açıklama
run Conditional dizgi Satır içi betik veya betiğinizin göreli yolu. , , shell, , kind, dirinteractive, continueOnErrorveya secretsbelirtilirken configgereklidir. Satır içi betik belirtirken, kullanılacak öğesini shell de belirtmeniz gerekir. Dosya yolları kullanılırken kabuk otomatik olarak çıkarılır.
shell N dizgi Betiklerin yürütülecek kabuk türü. Varsayılan: sh. İzin verilen değerler: sh, pwsh.
kind N dizgi Kanca betiği için yürütücü türü. Atlandığında, türü yolun dosya uzantısından run otomatik olarak algılanır (örneğin, olur.py, python.ps1 olurpwsh). İzin verilen değerler: sh, pwsh, js, ts, python, dotnet.
dir N dizgi Kanca yürütme için çalışma dizini. Betiği çalıştırırken bağımlılık yüklemesi için proje kökü ve çalışma dizini olarak kullanılır. Göreli yollar proje veya hizmet kökünden çözümlenir. Atlandığında, varsayılan olarak betik dosyasını içeren dizini kullanır.
continueOnError N boolean Komut dosyası hatasının komutu durdurup durdurmadığı azd . Varsayılan: false.
interactive N boolean Betiğin etkileşimli modda çalışıp çalışmadığı, , stdinve stdout çalıştıran konsolun bağlamasıstderr. Varsayılan: false.
windows N nesne Belirtildiğinde, Windows ortamlarında yürütürken kanca yapılandırmasını geçersiz kılar. Aynı kanca nesnesi biçimini kullanır.
posix N nesne Belirtildiğinde, POSIX (Linux ve macOS) ortamlarında yürütürken kanca yapılandırmasını geçersiz kılar. Aynı kanca nesnesi biçimini kullanır.
secrets N nesne Gizli dizileri bağlamak için ortam değişkenlerinin haritası azd . Bir değişken ortamda gizli dizi olarak ayarlandıysa, gizli dizi değeri kancaya geçirilir.
config N nesne Yürütücüye özgü yapılandırma. Kullanılabilir özellikler değere kind bağlıdır. Bkz . Kanca yürütücü yapılandırması.

Note

her ikisi de windowsposix belirtildiğinderun, , shell, kind, dir, interactive, , continueOnError, secretsve config özellikleri en üst düzeyde kullanılamaz. Bunun yerine platforma özgü nesneleri kullanın.

Kanca yürütücü yapılandırması

config özelliği, değere bağlı kind olarak farklı özellikleri kabul eder.

JavaScript ve TypeScript (js, ts) yapılandırması

Mülkiyet Gerekli Tür Açıklama
packageManager N dizgi Bağımlılık yüklemesi için kullanılacak paket yöneticisi. Kilit dosyalarından otomatik algılamayı geçersiz kılar. İzin verilen değerler: npm, pnpm, yarn.

Python yapılandırması

Mülkiyet Gerekli Tür Açıklama
virtualEnvName N dizgi Python sanal ortamının dizin adı. Varsayılan olarak otomatik algılama (.venv, venv) veya {baseName}_envolur.

.NET (dotnet) yapılandırması

Mülkiyet Gerekli Tür Açıklama
configuration N dizgi Kanca betiğini oluşturmak için MSBuild yapılandırması (örneğin, , DebugRelease).
framework N dizgi Kanca betiğini oluşturmak ve çalıştırmak için hedef çerçeve adı (örneğin, , net8.0net10.0).

Kabuk (sh, pwsh) yapılandırması

Kabuk yürütücüleri şu anda özellikleri desteklememektedir config .

Kanca örnekleri

Platforma özgü kancalar

hooks:
  preprovision:
    windows:
      shell: pwsh
      run: ./scripts/setup.ps1
    posix:
      shell: sh
      run: ./scripts/setup.sh

Tür ile Python kancası

hooks:
  postprovision:
    kind: python
    run: ./scripts/seed-data.py
    dir: ./scripts
    config:
      virtualEnvName: .venv

Tek bir olay için birden çok kanca

hooks:
  postprovision:
    - shell: sh
      run: ./scripts/step1.sh
    - shell: sh
      run: ./scripts/step2.sh

requiredVersions

(nesne) ve uzantılarının azd gerekli sürümleri için ek yapılandırma sağlar.

Mülkiyet Gerekli Tür Açıklama
azd N dizgi Bu proje için desteklenen azd sürümleri aralığı. sürümü azd bu aralığın dışındaysa, proje yüklenemez. semver aralığı söz dizimini destekler.
extensions N nesne Bu proje için gerekli uzantıların ve sürüm kısıtlamalarının haritası. semver kısıtlamalarını destekler. Sürüm atlanırsa en son sürüm yüklenir.
requiredVersions:
  azd: ">= 0.6.0-beta.3"
  extensions:
    azure.ai.agents: ">=1.0.0"
    my-extension: latest

state

(nesne) Durum yönetimi için ek yapılandırma sağlar.

Mülkiyet Gerekli Tür Açıklama
remote N nesne Uzak durum yönetimi için ek yapılandırma sağlar. Bkz. state.remote.

state.remote

Mülkiyet Gerekli Tür Açıklama
backend Y dizgi Uzak durum arka uç türü. Varsayılan: AzureBlobStorage. İzin verilen değerler: AzureBlobStorage.
config Conditional nesne Arka uca özgü yapılandırma. backend AzureBlobStorage olduğunda gereklidir. Bkz. Azure Blob Depolama yapılandırması.

Azure Blob Depolama yapılandırması

Mülkiyet Gerekli Tür Açıklama
accountName Y dizgi Azure Depolama hesap adı.
containerName N dizgi Azure Depolama kapsayıcı adı. Belirtilmezse varsayılan olarak proje adını kullanır.
endpoint N dizgi Azure Depolama uç noktası. Varsayılan: blob.core.windows.net.
state:
  remote:
    backend: AzureBlobStorage
    config:
      accountName: mystorageaccount
      containerName: azd-state

platform

(nesne) Azure Dev Center gibi platforma özgü özellikler için ek yapılandırma sağlar.

Mülkiyet Gerekli Tür Açıklama
type Y dizgi Platform türü. İzin verilen değerler: devcenter.
config N nesne Platforma özgü yapılandırma. Bkz . Geliştirme Merkezi yapılandırması.

Geliştirme Merkezi yapılandırması

şu durumlarda type kullanılabilir:devcenter

Mülkiyet Gerekli Tür Açıklama
name N dizgi Azure Geliştirme Merkezi'nin adı. Bu proje için varsayılan geliştirme merkezi olarak kullanılır.
project N dizgi Azure Dev Center projesinin adı.
catalog N dizgi Azure Geliştirme Merkezi kataloğunun adı.
environmentDefinition N dizgi Geliştirme Merkezi katalog ortamı tanımının adı.
environmentType N dizgi Dağıtım ortamı için kullanılan Geliştirme Merkezi proje ortamı türü.
platform:
  type: devcenter
  config:
    name: my-devcenter
    project: my-project
    catalog: my-catalog
    environmentDefinition: my-env-def
    environmentType: dev

workflows

(nesne) İş akışları için davranışı geçersiz kılma azd up gibi ek yapılandırma sağlar.

Mülkiyet Gerekli Tür Açıklama
up N nesne veya dizi Belirtildiğinde, iş akışı için azd up varsayılan davranışı geçersiz kılar.

İş akışı adımları

İş up akışı bir steps dizi kabul eder (veya doğrudan dizi olarak belirtilebilir). Her adım bir azd komut çalıştırır.

Mülkiyet Gerekli Tür Açıklama
azd Y dize veya nesne Yürütülecek azd komut. Dize (örneğin, provision) veya dizili bir args nesne olabilir.

İş akışı adım sırasını yapılandırma

Aşağıdaki azure.yaml dosya, adımdan sonraki azd up adımı taşımak azd package için varsayılan davranışını azd provision değiştirir. Derleme veya paketleme işlemi sırasında kaynakların URL'lerini bilmeniz gereken senaryolarda bu yaklaşımı kullanın.

name: todo-nodejs-mongo
metadata:
  template: todo-nodejs-mongo@0.0.1-beta
workflows:
  up:
    steps:
      - azd: provision
      - azd: package
      - azd: deploy --all

cloud

(nesne) Azure Kamu gibi bağımsız bulutlara dağıtmak için ek yapılandırma sağlar. Varsayılan bulut şeklindedir AzureCloud.

Mülkiyet Gerekli Tür Açıklama
name N dizgi Bulut ortamı adı. İzin verilen değerler: AzureCloud, AzureChinaCloud, AzureUSGovernment.
cloud:
  name: AzureUSGovernment

Yardım isteme

Azure Geliştirici CLI'sı için hata oluşturma, yardım isteme veya yeni bir özellik önerme hakkında bilgi için lütfen sorun giderme ve destek sayfasını ziyaret edin.

Sonraki adımlar