настройка переменных среды;
Переменные среды влияют на подготовку и развертывание ресурсов в Azure. Это особенно полезно при выполнении azd в сценариях рабочих процессов CI/CD.
Подстановка входных параметров
Переменные среды можно ссылаться в файлах параметров (*.parameters.json
для Bicep, *.tfvars.json
для Terraform) в рамках подготовки. При обнаружении azd
синтаксиса подстановки переменной среды автоматически заменяет ссылку фактическим набором значений переменной среды. Подстановка также возникает для определенных параметров конфигурации (свойства, описанные в разделе "Поддержка подстановки переменных среды"), а также в файлах azure.yaml
конфигурации развертывания, таких как манифесты развертывания.aks
Пример подстановки входных параметров (Bicep)
Предположим, что у вас есть набор переменных AZURE_LOCATION
среды:
export AZURE_LOCATION=westus3
$env:AZURE_LOCATION='westus3'
main.parameters.json
В файле можно ссылаться и разрешать подстановку AZURE_LOCATION
среды с помощью следующего синтаксиса:
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentParameters.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"location": {
"value": "${AZURE_LOCATION}"
}
}
}
Файл, зависящий от среды .env
Выходные данные для подготовки инфраструктуры автоматически хранятся в виде переменных среды в .env
файле, расположенном в разделе .azure/<environment name>/.env
. Эта настройка позволяет локальному приложению или сценариям развертывания использовать переменные, хранящиеся в .env
файле, чтобы ссылаться на размещенные в Azure ресурсы при необходимости. Чтобы просмотреть эти выходные данные, запустить azd env get-values
или azd env get-values --output json
для выходных данных JSON.
Переменные среды, предоставляемые azd
Ниже приведены переменные, которые azd
автоматически предоставляются:
Имя | Описание | Примеры | Когда доступно |
---|---|---|---|
AZURE_ENV_NAME |
Имя используемой среды. | todo-app-dev |
При создании среды (после запуска azd init или azd env new, например). |
AZURE_LOCATION |
Расположение используемой среды. | eastus2 |
Перед первой подготовкой среды. |
AZURE_PRINCIPAL_ID |
Запущенный пользователь или субъект-служба. | 925cff12-ffff-4e9f-9580-8c06239dcaa4 |
Определяется автоматически во время подготовки (эфемерный). |
AZURE_SUBSCRIPTION_ID |
Целевая подписка. | 925cff12-ffff-4e9f-9580-8c06239dcaa4 |
Перед первой подготовкой среды. |
SERVICE_<service>_IMAGE_NAME |
Полное имя образа контейнера, опубликованного в Реестр контейнеров Azure для служб приложений контейнеров. | todoapp/web-dev:azdev-deploy-1664988805 |
После успешной публикации containerapp образа |
Переменные среды, предоставляемые пользователем
Предоставленные пользователем переменные можно объявить как выходной параметр инфраструктуры (который автоматически хранится .env
в main.bicep
файле) или задать непосредственно пользователем в среде (azd env set <key> <value>
). azd
считывает значения в качестве конфигурации и выполняется по-разному.
Имя | Описание | Примеры | Произведенный эффект |
---|---|---|---|
AZURE_AKS_CLUSTER_NAME |
Имя целевого кластера Служба Azure Kubernetes. | aks-my-cluster |
Необходимое свойство для развертывания aks службы. |
AZURE_RESOURCE_GROUP |
Целевая группа ресурсов. Строка типа. | rg-todo-dev |
azd не будет выполнять обнаружение группы ресурсов и вместо этого ссылается на эту группу ресурсов. azd кроме того, не управляет созданными файлами конфигурации IaC, поэтому изменения файлов IaC могут потребоваться. |
AZURE_CONTAINER_REGISTRY_ENDPOINT |
Конечная точка Реестр контейнеров Azure для публикации образа Docker. Строка типа. | myexampleacr.azurecr.io |
Необходимое свойство для развертывания containerapp или aks службы. |
SERVICE_<service>_ENDPOINTS |
Конечные точки для конкретной службы. Тип array (bicep) / list-equivalent (terraform). |
['endpoint1', 'endpoint2'] |
Задает общедоступные конечные точки для конкретной службы, которые будут использоваться azd для отображения. По умолчанию azd обнаруживает автоматически назначенные имена узлов для данного узла, например *.azurewebsites.net для appservice . |
Включение демонстрационного режима
azd
включает демонстрационный режим, который скрывает идентификатор подписки в выходных данных консоли. Эта функция полезна для сценариев, в которых требуется демонстрация или представление azd
команд в общедоступном параметре.
В демонстрационном режиме представлена переменная среды: AZD_DEMO_MODE
Чтобы включить демонстрационный режим, выполните следующую команду:
export AZD_DEMO_MODE true
Если вы хотите, чтобы демонстрационный режим сохранялось во время перезагрузки, можно также выполнить следующее:
setx AZD_DEMO_MODE true
или в PowerShell:
$env:AZD_DEMO_MODE="true"