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


Добавление поддержки Интерфейса командной строки разработчика Azure в приложение с помощью существующего шаблона

Интерфейс командной строки разработчика Azure (azd) предоставляет два разных рабочих процесса для инициализации шаблона для использования с приложением, в том числе:

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

Оба этих подхода рассматриваются в документации по созданию шаблонов командной строки разработчика Azure.

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

Выберите шаблон приложения

Рабочий процесс azd init выбора шаблона команды позволяет выбрать существующий azd шаблон для использования в качестве отправной точки. Содержимое выбранного шаблона добавляется в корневой каталог проекта. Большинство шаблонов предоставляют необходимый набор файлов и папок, а многие включают полный набор azd файлов инфраструктуры как кода для подготовки ресурсов Azure для выбранного стека приложений.

В этом примере вы будете использовать шаблон Starter — Bicep , который включает в себя основную структуру azd шаблона и некоторые полезные стандартные коды для начала работы. Начальные шаблоны — отличный выбор, если вы хотите создать правильные структуры шаблонов и начальные ресурсы, но по-прежнему создавать собственные файлы инфраструктуры.

  1. Чтобы выполнить дальнейшие действия с использованием существующего примера приложения, клонируйте следующий начальный проект в пустой каталог на компьютере:

    git clone https://github.com/Azure-Samples/msdocs-python-flask-webapp-quickstart
    
  2. В выбранном средстве командной строки перейдите к корневому каталогу клонированного проекта.

  3. azd init Выполните команду, чтобы инициализировать azd шаблон.

    azd init
    
  4. При появлении запроса выберите параметр "Выбрать шаблон".

    Снимок экрана: выбор параметров шаблона.

  5. В списке шаблонов выберите Starter — Bicep. Вы можете ввести имя шаблона или использовать клавиши со стрелками клавиатуры, чтобы найти его.

  6. При появлении запроса введите короткое имя среды, например testenv.

  7. После запуска azd initв текущий каталог добавляются следующие ресурсы:

    ├── .azdo                                        [ Configures an Azure Pipeline ]
    ├── .devcontainer                                [ For DevContainer ]
    ├── .github                                      [ Configures a GitHub workflow ]
    ├── .vscode                                      [ VS Code workspace configurations ]
    ├── .azure                                       [ Stores Azure configurations and environment variables ]
    ├── infra                                        [ Contains infrastructure as code files ]
    │   ├── main.bicep/main.tf                       [ Main infrastructure file ]
    │   ├── main.parameters.json/main.tfvars.json    [ Parameters file ]
    │   └── core/modules                             [ Contains reusable Bicep/Terraform modules ]
    └── azure.yaml                                   [ Describes the app and type of Azure resources]
    

Обновление файлов Bicep

Теперь проект содержит основную структуру и ресурсы azd шаблона. Однако для подготовки ресурсов Azure для конкретного проекта необходимо обновить файлы Bicep в папке infra . Чтобы разместить пример приложения, необходимо определить следующие ресурсы с помощью файлов Bicep:

  • План обслуживания приложение Azure
  • Служба приложение Azure, запущенная в Linux
  1. Откройте корневой каталог проекта в выбранном редакторе, например Visual Studio Code.

  2. main.bicep Откройте файл в папке infra с помощью редактора. Этот файл содержит полезный код для настройки важных переменных, параметров и соглашений об именовании. Под блоком комментариев около строки 50, которая считывает Add resources to be provisioned below, добавьте следующий Bicep:

    // Creates an app service instance to host the app
    module web './core/host/appservice.bicep' = {
      name: 'web'
      scope: rg
      params: {
        name: '${abbrs.webSitesAppService}web-${resourceToken}'
        location: location
        tags: union(tags, { 'azd-service-name': 'web' })
        appServicePlanId: appServicePlan.outputs.id
        runtimeName: 'python'
        runtimeVersion: '3.8'
        scmDoBuildDuringDeployment: true
      }
    }
    
    // Create an App Service Plan to group applications under the same payment plan and SKU
    module appServicePlan './core/host/appserviceplan.bicep' = {
      name: 'appserviceplan'
      scope: rg
      params: {
        name: '${abbrs.webServerFarms}${resourceToken}'
        location: location
        tags: tags
        sku: {
          name: 'B1'
        }
      }
    }
    

    Примечание.

    • Уникальная строка создается на основе идентификатора подписки и используется в качестве переменной ${resourceToken} . Этот маркер добавляется к имени всех ресурсов Azure, созданных azd.
    • azd использует теги для идентификации ресурсов, чтобы можно было изменить имена на основе соглашения об именовании вашей организации.
    • Тег 'azd-service-name': 'web' службы приложений — это значение azd , которое используется для идентификации узла развертывания. Значение должно совпадать с тем, что определено для службы в файле azure.yaml .

Обновление файла azure.yaml

Чтобы развернуть приложение, azd необходимо узнать больше о приложении. Файл azure.yaml используется для определения расположения исходного кода, языка и службы размещения Azure для каждой службы в приложении. Полные сведения см. в схеме azure.yaml.

  1. azure.yaml Откройте корень проекта.

  2. Добавьте следующие строки в нижней части файла:

    name: msdocs-python-flask-webapp-quickstart
    services:
      web:
        project: .
        language: py
        host: appservice
    

Подготовка и развертывание шаблона

  1. Сохраните все изменения и выполните следующую команду, чтобы подготовить и развернуть ресурсы приложения в Azure:

    azd up
    
  2. По завершении команды щелкните ссылку в выходных данных команды, чтобы перейти на развернутый сайт.

Теперь проект совместим с Интерфейсом командной строки разработчика Azure и может использоваться в качестве шаблона.

Примечание.

azd также поддерживает использование Buildpack для контейнеризации приложений по умолчанию. Если шаблон azd предназначен для приложений контейнеров Azure или Служба Azure Kubernetes, но не содержит файл Docker, azd автоматически создает образ с помощью Buildpack.