Ortam değişkenlerini yönetme

Ortam değişkenleri, kaynakların Azure'a nasıl sağlanıp dağıtılma şeklini etkiler. Bu, ci/CD iş akışı senaryolarında azd çalıştırırken özellikle yararlıdır.

Giriş Parametrelerini Değiştirme

Ortam değişkenlerine sağlamanın bir parçası olarak parametre dosyalarında (*.parameters.json Bicep için, *.tfvars.json Terraform için) başvurulabilir. Ortam değişkeni değiştirme söz dizimi ile karşılaşıldığında, azd başvuruyu otomatik olarak gerçek ortam değişkeni değer kümesiyle değiştirmektedir. Değiştirme, içindeki azure.yaml ('Ortam değişkeni değiştirmesini destekler' ile belgelenen özellikler) ve için dağıtım bildirimleri aksgibi dağıtım yapılandırma dosyalarında da gerçekleşir.

Giriş parametresi değiştirme örneği (Bicep)

Ortam değişkeninin AZURE_LOCATION ayarlandığını varsayalım:

export AZURE_LOCATION=westus3
$env:AZURE_LOCATION='westus3'

main.parameters.json Dosyasında, aşağıdaki söz dizimini kullanarak ortam değişimine başvurabilir AZURE_LOCATION ve izin vekleyebilirsiniz:

{
  "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentParameters.json#",
  "contentVersion": "1.0.0.0",
  "parameters": {
    "location": {
      "value": "${AZURE_LOCATION}"
    }
  }
}

Ortama özgü .env dosya

Altyapı sağlama çıktıları, altında .azure/<environment name>/.envbulunan bir .env dosyada ortam değişkenleri olarak otomatik olarak depolanır. Bu kurulum, gerekirse Azure tarafından barındırılan kaynaklara başvurmak için yerel bir uygulamanın veya dağıtım betiklerinin dosyada .env depolanan değişkenleri kullanmasına olanak tanır. Bu çıkışları görmek için, azd env get-values --output json veya JSON çıkışı için komutunu çalıştırınazd env get-values.

Tarafından sağlanan ortam değişkenleri azd

Aşağıda tarafından azdotomatik olarak sağlanan değişkenler verilmiştir:

Veri Akışı Adı Açıklama Örnekler Uygun olduğunda
AZURE_ENV_NAME Kullanımdaki ortamın adı. todo-app-dev Bir ortam oluşturulduğunda (örneğin azd init veya azd env new çalıştırıldıktan sonra).
AZURE_LOCATION Kullanımdaki ortamın konumu. eastus2 Ortam ilk kez sağlanmadan hemen önce.
AZURE_PRINCIPAL_ID Çalışan kullanıcı/hizmet sorumlusu. 925cff12-ffff-4e9f-9580-8c06239dcaa4 Sağlama sırasında otomatik olarak belirlenir (kısa ömürlü).
AZURE_SUBSCRIPTION_ID Hedeflenen abonelik. 925cff12-ffff-4e9f-9580-8c06239dcaa4 Ortam ilk kez sağlanmadan hemen önce.
SERVICE_<service>_IMAGE_NAME Kapsayıcı uygulama hizmetleri için Azure Container Registry'de yayımlanan kapsayıcı görüntüsünün tam adı. todoapp/web-dev:azdev-deploy-1664988805 Bir görüntünün başarılı bir şekilde yayımlanmasının containerapp ardından

Kullanıcı tarafından sağlanan ortam değişkenleri

Kullanıcı tarafından sağlanan değişkenler, dosyada main.bicep bir altyapı çıkış parametresi (içinde otomatik olarak depolanır.env) olarak bildirilebilir veya doğrudan ortamdaki (azd env set <key> <value>) kullanıcı tarafından ayarlanabilir. azd yapılandırma olarak değerleri okur ve farklı performans gösterir.

Veri Akışı Adı Açıklama Örnekler Etkiler
AZURE_AKS_CLUSTER_NAME Hedeflenmesi gereken Azure Kubernetes Service kümesinin adı. aks-my-cluster Bir hizmetin dağıtımı aks için gerekli özellik.
AZURE_RESOURCE_GROUP Hedeflediğiniz kaynak grubu. Dize yazın. rg-todo-dev azd kaynak grubu bulma işlemini gerçekleştirmez ve bunun yerine bu kaynak grubuna başvurur. azd ayrıca, yazılan IaC yapılandırma dosyalarını denetlemez, bu nedenle IaC dosyalarında değişiklik yapılması gerekebilir.
AZURE_CONTAINER_REGISTRY_ENDPOINT Docker görüntüsünü yayımlamak için Azure Container Registry uç noktası. Dize yazın. myexampleacr.azurecr.io Veya aks hizmetinin dağıtımı containerapp için gerekli özellik.
SERVICE_<service>_ENDPOINTS Belirli bir hizmetin uç noktaları. Tür array (bicep) / list-equivalent (terraform). ['endpoint1', 'endpoint2'] Belirli bir hizmet için genel uç noktaları ayarlar, azd tarafından görüntüleme için kullanılır. Varsayılan olarak azd, belirli bir konak için otomatik olarak atanan konak adlarını bulur( örneğin *.azurewebsites.net , için appservice).

Tanıtım modunu etkinleştirme

azd , konsol çıkışında abonelik kimliğinizi gizleyen bir tanıtım modu içerir. Bu özellik, komutları genel bir ayarda göstermek veya göstermek azd istediğiniz senaryolar için kullanışlıdır.

Tanıtım modu ortam değişkenini tanıtır: AZD_DEMO_MODE. Tanıtım modunu etkinleştirmek için şunu çalıştırın:

export AZD_DEMO_MODE true

Tanıtım modunun yeniden başlatmalar arasında kalıcı olmasını istiyorsanız şunları da çalıştırabilirsiniz:

setx AZD_DEMO_MODE true

veya PowerShell'de:

$env:AZD_DEMO_MODE="true"