Поделиться через


Общие сведения о средах командной строки разработчика Azure

Интерфейс командной строки разработчика Azure (azd) позволяет управлять несколькими средами развертывания для проектов, чтобы сохранять конфигурации отдельно для разработки, тестирования и рабочей среды. В этой статье описываются основные понятия о том, как можно использовать среды для управления процессом разработки и развертывания.

Что такое среды?

Среда в интерфейсе командной строки разработчика Azure (azd) — это именованный набор конфигураций для развертывания приложения, например разработки, тестирования или prod. Различные среды можно настроить с различными значениями. Среды служат нескольким важным целям:

  • Изоляция: отделяйте разработку, тестирование и рабочие развертывания.
  • Управление конфигурацией. Обслуживание различных параметров для каждой среды.
  • Совместная работа. Разрешить участникам команды работать с собственными средами.
  • Организация ресурсов: группирование и подготовка ресурсов Azure по среде.
  • Воспроизводимость. Обеспечение согласованности развертываний на разных этапах.

Каждая среда имеет собственную группу ресурсов Azure и параметры конфигурации. Эта изоляция среды помогает предотвратить изменения в одной среде, влияя на другие.

Структура среды и конфигурация

Среды КОМАНДНОй строкиazd разработчика Azure живут в структуре каталогов в проекте:

├── .azure                          [Created when you run azd init or azd up]
│   ├── <environment-name-1>        [Directory for environment-specific configurations]
│   │   ├── .env                    [Environment variables for this environment]
│   │   └── config.json             [Additional configuration parameters for this environment]
│   ├── <environment-name-2>        [Another environment]
│   │   ├── .env                    
│   │   └── config.json
│   └── config.json                 [Global azd configuration]

Ключевыми компонентами этой структуры являются:

  • .azure каталог: корневой каталог для всех конфигураций среды. Исключен из системы управления версиями .gitignore по умолчанию.
  • Каталоги, относящиеся к среде: каталоги, именованные в честь сред, например dev, testprod.
  • .env file: содержит переменные, относящиеся к среде, используемые приложением и во время развертывания.
  • config.json: используется для управления параметрами, влияющими на azd поведение команд и функции. Этот файл не предназначен для непосредственного использования конечными пользователями.

Имена среды

Именование среды обычно соответствует следующим шаблонам:

  • Командные проекты: <project-name-[dev/int/prod]>
  • Личные проекты: <personal-unique-alias-[dev/int/prod]>

Эти соглашения об именовании не применяются azd и настраиваются пользователем.

Переменные среды

Переменные среды командной строки разработчика Azure предоставляют способ хранения параметров конфигурации, влияющих на их влияние, и может отличаться между средами. При выполнении команд КОМАНДНОй строки разработчика Azure эти переменные используются для:

  • Настройте параметры приложения, такие как конечные точки для служб Azure.
  • Определите параметры инфраструктуры для влияния на процесс подготовки.

Файл .env содержит эти переменные в стандартном формате:

AZURE_ENV_NAME=dev
AZURE_LOCATION=eastus
AZURE_SUBSCRIPTION_ID=00000000-0000-0000-0000-000000000000
AZURE_RESOURCE_GROUP=rg-dev-12345
SERVICE_WEB_HOSTNAME=web-dev-12345.azurewebsites.net
SERVICE_API_HOSTNAME=api-dev-12345.azurewebsites.net

К общим переменным среды относятся:

Переменная Описание
AZURE_ENV_NAME Имя текущей среды
AZURE_LOCATION Регион Azure, в котором развертываются ресурсы
AZURE_SUBSCRIPTION_ID Идентификатор подписки Azure, используемой для этой среды
AZURE_RESOURCE_GROUP Имя группы ресурсов для этой среды

Подсказка

Другие распространенные переменные среды и примеры, относящиеся к службе, см. в документации по переменным среды .

При работе с переменными среды:

  • Избегайте фиксации .env файлов в системе управления версиями. Если необходимо сохранить или предоставить общий доступ к конфигурации среды, пользователи должны использовать удаленные среды.
  • Используйте согласованное именование в разных средах.
  • Используйте команду для безопасного azd env set обновления переменных.

Предупреждение

Никогда не храните секреты в файле КОМАНДНОй строки .env разработчика Azure. Эти файлы можно легко делиться или копировать в неавторизованные расположения или проверять их в системе управления версиями. Используйте такие службы, как Azure Key Vault или управление доступом на основе ролей Azure (RBAC) для защищенных или секретных решений.

Сравнение других сред платформы

Многие платформы программирования и средства, такие как Node.js, Django или React, используют .env файлы для настройки. Хотя интерфейс командной строки разработчика Azure (azd) также использует .env файлы, существуют важные различия.

Понятие Интерфейс командной строки разработчика Azure .env Файлы платформы .env
Местоположение Сохранено в .azure/<environment-name>/.env Обычно хранится в корневом каталоге проекта
Поддержка среды Поддержка нескольких пользовательских сред (разработка, тестирование, prod) Часто требуются соглашения об переключении файлов вручную или именовании (.env.development, .env.production)
Механизм загрузки Автоматическая загрузка по командам azd Обычно требуется явная загрузка в коде приложения или скриптах сборки
Интеграция Глубоко интегрированная с службами Azure и подготовкой ресурсов Конфигурация общего назначения, а не azure
Управление переменными Управление с помощью azd env команд Обычно редактируется вручную или с помощью пользовательских скриптов

Хотя оба используют аналогичные цели, подход Azure Developer CLI .env добавляет структуру и инструменты, предназначенные для управления несколькими средами развертывания и ресурсами Azure.

Замечание

Если в проекте уже используются файлы платформы .env , обе системы конфигурации можно хранить без конфликтов. azd Переменные среды переопределяют системные переменные среды с тем же именем для некоторых операций.

Дальнейшие шаги