Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Интерфейс командной строкиazd разработчика Azure () предоставляет два разных рабочего процесса для инициализации шаблона для использования с приложением, в том числе:
- Используйте код в текущем каталоге: этот подход анализирует приложение и автоматически создает поддерживаемые ресурсы инфраструктуры и конфигурации.
- Выберите шаблон: этот подход позволяет интегрировать существующий шаблон с приложением или использовать существующий шаблон в качестве отправной точки для нового приложения.
Оба этих подхода рассматриваются в документации по созданию шаблонов CLI для разработчиков Azure.
В этой статье вы узнаете, как добавить поддержку Azure Developer CLI (azd) в приложение с помощью подхода Использовать код в текущем каталоге. Дополнительные сведения об альтернативном подходе см. в документе Добавление поддержки azd в приложение с помощью существующего шаблона. Вы также можете посетить учебный курс — создание и развертывание azd шаблонов для получения дополнительных сведений о создании azd шаблонов.
Использование кода в текущем каталоге
Вы можете выполнить следующие шаги, используя свой проект. Однако если вы предпочитаете использовать пример приложения, клонируйте следующий начальный репозиторий в пустой каталог на компьютере:
git clone https://github.com/Azure-Samples/msdocs-python-flask-webapp-quickstartОткройте терминал в корневом каталоге проекта.
azd initВыполните команду, чтобы инициализировать шаблон.azd initПри появлении запроса выберите параметр "Использовать код" в текущем каталоге.
azdанализирует проект и предоставляет сводку об обнаруженных службах и рекомендуемых ресурсах Azure для размещения.Выберите "Подтвердить" и продолжить инициализацию приложения.
azdсоздает следующие ресурсы в корневом каталоге проекта:- Файл
azure.yamlс соответствующими определениями служб. - Папка
infraс файлами в виде кода инфраструктуры для подготовки и развертывания проекта в Azure. - Папка
.azureс переменными среды, заданными.envв файле.
Дополнительные сведения об этом процессе обнаружения и создания приведены далее в статье.
- Файл
Созданные файлы работают как есть с предоставленным примером приложения и могут также подойти для ваших собственных приложений. При необходимости созданные файлы можно изменить в соответствии с вашими потребностями. Например, может потребоваться дополнительно изменить файлы инфраструктуры как кода в папке
infra, если приложение использует Azure ресурсы за пределами тех, которые были определеныazd.azd upВыполните команду, чтобы подготовить и развернуть приложение для Azure.azd upКогда появится запрос, выберите нужную подписку и регион, чтобы начать процесс подготовки ресурсов и развертывания.
По завершении процесса нажмите ссылку в выводе
azd, чтобы открыть приложение в браузере.
Изучение шагов инициализации
При выборе рабочего процесса Использовать код в текущем каталоге команда azd init анализирует ваш проект и автоматически генерирует код на основе обнаруженного. В разделах ниже описаны сведения о том, как работает этот процесс и какие технологии в настоящее время поддерживаются.
Обнаружение
Команда azd init обнаруживает файлы проекта для поддерживаемых языков, расположенных в каталоге проекта и подкаталогах.
azd также сканирует зависимости пакетов для сбора сведений о веб-платформах или базах данных, используемых приложением. При необходимости можно вручную добавить или изменить обнаруженные компоненты, как показано в сводке подтверждения.
Текущая логика обнаружения выглядит следующим образом:
- Поддерживаемые языки:
- Python
- JavaScript/TypeScript
- .NET
- Java
- Поддерживаемые базы данных:
- MongoDB
- PostgreSQL
- Для Python и JavaScript/TypeScript веб-платформы и базы данных автоматически обнаруживаются.
- Если проект JavaScript/TypeScript использует интерфейсную (или клиентскую) веб-платформу, он классифицируется как интерфейсная служба. Если служба использует интерфейсную веб-платформу, которая в настоящее время не определена, можно выбрать JQuery, чтобы обеспечить эквивалентную классификацию и поведение интерфейсной службы.
Поколение
После подтверждения обнаруженных компонентов azd init создает файлы кода инфраструктуры, необходимые для развертывания приложения в Azure.
Логика создания выглядит следующим образом:
- Поддерживаемые хосты:
- Контейнеры приложений Azure.
- Для баз данных используется поддерживаемое сопоставление между технологией базы данных и используемой службой:
- MongoDB: Azure API CosmosDB для MongoDB
- PostgreSQL: База данных Azure для PostgreSQL — гибкий сервер
- Redis: надстройка Redis для Контейнеры приложений Azure
- Службы, использующие базы данных, будут иметь переменные среды, которые обеспечивают подключение к базе данных, предварительно настроенной по умолчанию.
- Если обнаружены как внешние, так и внутренние службы, конфигурация CORS на узле Azure для внутренних служб будет обновлена, чтобы разрешить домен размещения по умолчанию для внешних служб. Это можно изменить или удалить при необходимости в файлах конфигурации инфраструктуры в виде кода.
Добавление поддержки контейнеров разработки
Вы также можете сделать свой шаблон совместимым с контейнерами для разработки и Codespaces. Контейнер разработки позволяет использовать контейнер в качестве полнофункциональный среды разработки. Его можно использовать для запуска приложения, разделения средств, библиотек или сред выполнения, необходимых для работы с базой кода, а также для обеспечения непрерывной интеграции и тестирования. Контейнеры разработки можно запускать локально или удаленно в частном или общедоступном облаке. (Источник: https://containers.dev/)
Чтобы добавить поддержку контейнеров разработки, выполните приведенные далее действия.
Создайте папку devcontainer в корне проекта.
devcontainer.jsonСоздайте файл внутри.devcontainerпапки с требуемыми конфигурациями. Начальныйazdшаблон предоставляет примерdevcontainer.jsonфайла, который можно скопировать в проект и изменить по мере необходимости.
Дополнительные сведения о работе с контейнерами разработки см. в документации по Visual Studio Code.
Добавить поддержку конвейера CI/CD
Вы также можете добавить поддержку CI/CD в шаблоне с помощью действий GitHub или Azure DevOps, выполнив следующие действия:
.githubДобавьте папку для действий GitHub или.adoпапки для Azure DevOps в корневой каталог проекта.Добавьте файл рабочего процесса в новую папку. Начальный
azdшаблон содержит пример файла рабочего процесса GitHub Actions и пример файла конвейеров Azure DevOps для каждой платформы. Эти файлы можно скопировать в проект и изменить их по мере необходимости.Возможно, вам также потребуется обновить
main.parameters.jsonфайл вinfraпапке с необходимыми переменными среды для запуска рабочего процесса.