azd şablonlar , kavram kanıtı uygulama kodunu, düzenleyici/IDE yapılandırmalarını ve Bicep veya Terraform'da yazılmış altyapı kodunu içeren şema depolarıdır. Bu şablonların, belirli uygulama gereksinimlerinize göre değiştirilmesi ve uyarlanması ve ardından Azure Geliştirici CLI'sini (azd ) kullanarak uygulamanızı Azure'a almak için kullanılması amaçlanmıştır. azure.yaml şeması, bu şablonlara dahil edilen Azure kaynaklarının uygulamalarını ve türlerini tanımlar ve açıklar.
Örnek
Aşağıda, şablonunuz azd için gerekli olan genel bir azure.yaml örnek verilmiştir.
name: yourApp
metadata:
template: yourApp@0.0.1-beta
services:
web:
project: ./src/web # path to your web project
dist: build # relative path to service deployment artifacts
language: js # one of the supported languages
host: appservice # one of the supported Azure services
ToDo NodeJs Mongo şablonumuzdaki ile azure.yamlkarşılaştırın:
(nesne) Azure altyapısı sağlama için ek yapılandırma sağlar. Daha fazla ayrıntı için bkz . infra properties .
services
Y
(nesne) Uygulamayı oluşturan hizmetlerin tanımı. Daha fazla ayrıntı için bkz . hizmet özellikleri .
pipeline
N
(nesne) Sürekli tümleştirme işlem hattının tanımı. Daha fazla ayrıntı için bkz . işlem hattı özellikleri .
hooks
N
Komut düzeyi kancaları. Kancalar, betiğin ne zaman yürütülmesi gerektiğine bağlı olarak veya post ön ekli komut adlarıyla pre eşleşmelidirazd. Yolları belirtirken, bunların proje yoluna göre olması gerekir. Daha fazla ayrıntı için bkz . Komut ve olay kancalarını kullanarak Azure Geliştirici CLI iş akışlarınızı özelleştirme.
requiredVersions
N
Bu proje için desteklenen sürümleri azd aralığı. sürümü azd bu aralığın dışındaysa, proje yüklenemiyor. İsteğe bağlı (yoksa tüm sürümlere izin verir). Örnek: >= 0.6.0-beta.3
(dize) Hizmeti uygulayan Azure kaynağının adı. Belirtilmezse, azd ve azd-service-name etiketlerine göre azd-env-name bir kaynak arar. Bulunamazsa, hizmet adı (<environment-name><resource-name>) ile birleştirilmiş, geçerli ortam adından derlenmiş bir kaynak adı arar.
prodapi
project
Y
(dize) Hizmet kaynak kodu dizininin yolu.
host
Y
(dize) Hizmet uygulaması için kullanılan Azure kaynağının türü. Atlanırsa App Service varsayılır.
appservice, containerapp, function, staticwebapp, ( aks yalnızca aracılığıyla kubectl apply -fdağıtılabilir projeler için ) springapp (etkinleştirildiğinde- alfa özellikleri hakkında daha fazla bilgi edinin)
(dize) 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
Y
(dize) Hizmet dağıtım yapıtlarının göreli yolu. CLI, dağıtım yapıtını (.zip dosyası) oluşturmak için bu yol altındaki dosyaları kullanır. Atlanırsa, hizmet projesi dizini altındaki tüm dosyalar eklenir.
build
docker
N
Yalnızca olduğunda hostcontainerappgeçerlidir. Ek özellikler içeremez.
Azure Kubernetes Service (AKS) yapılandırma seçenekleri.
Aşağıdaki AKS örneğine bakın. deploymentPath(dize): İsteğe bağlı. Hizmet yolundan k8s dağıtım bildirimlerine göreli yol. Ayarlandığında, k8s dağıtım bildirimleri için varsayılan dağıtım yolu konumunu geçersiz kılar. Varsayılan: manifests; namespace(dize): İsteğe bağlı. Dağıtılan kaynakların k8s ad alanı. Belirtildiğinde, henüz mevcut değilse yeni bir k8s ad alanı oluşturulur. Varsayılan: Project name; deployment(nesne): Bkz . dağıtım özellikleri; service(nesne): Bkz. hizmet özellikleri; ingress(object): Bkz . giriş özellikleri.
hooks
N
Hizmet düzeyi kancaları. Kancalar, betiğin ne zaman yürütülmesi gerektiğine bağlı olarak veya post ön ekli olay adlarıyla pre eşleşmelidirservice. 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.
Docker seçenekleri örneği
Aşağıdaki örnekte, kapsayıcı uygulaması için Docker seçeneklerini bildiririz.
(dize) Isteğe bağlı. Dağıtım sırasında kullanılacak k8s dağıtım kaynağının adı. K8s dağıtım dağıtımının tamamlanmasını sağlamak için dağıtım sırasında kullanılır. Ayarlanmadıysa, hizmet adını içeren aynı ad alanında bir dağıtım kaynağı arar. Varsayılan: Service name
api
AKS service özellikleri
Öğe Adı
Zorunlu
Açıklama
Örnek
name
N
(dize) Isteğe bağlı. Varsayılan hizmet uç noktası olarak kullanılacak k8s hizmet kaynağının adı. Varsayılan hizmet kaynağı için uç noktaları belirlerken kullanılır. Ayarlanmadıysa, hizmet adını içeren aynı ad alanında bir dağıtım kaynağı arar. (Varsayılan: Hizmet adı)
api
AKS ingress özellikleri
Öğe Adı
Zorunlu
Açıklama
Örnek
name
N
(dize) Isteğe bağlı. Varsayılan hizmet uç noktası olarak kullanılacak k8s giriş kaynağının adı. Varsayılan giriş kaynağı için uç noktaları belirlerken kullanılır. Ayarlanmadıysa, hizmet adını içeren aynı ad alanında bir dağıtım kaynağı arar. Varsayılan: Service name
api
relativePath
N
(dize) Isteğe bağlı. Giriş denetleyicinizin kökünden hizmetin göreli yolu. Ayarlandığında, giriş kaynak yolunuzun köküne eklenir.
Hizmet düzeyi kancalı AKS örneği
metadata:
template: todo-nodejs-mongo-aks@0.0.1-beta
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}
pipeline özellikleri
Öğe Adı
Zorunlu
Açıklama
Örnek
provider
N
(dize) Sürekli tümleştirme için kullanılacak işlem hattı sağlayıcısı. (Varsayılan: github).
github, azdo
CI/CD işlem hattı örneği olarak Azure Pipelines (AzDo)
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.
Çok yakında: 2024 boyunca, içerik için geri bildirim mekanizması olarak GitHub Sorunları’nı kullanımdan kaldıracak ve yeni bir geri bildirim sistemiyle değiştireceğiz. Daha fazla bilgi için bkz. https://aka.ms/ContentUserFeedback.