Изучение и настройка шаблона интерфейса командной строки разработчика Azure

В этом кратком руководстве описано, как изучить и настроить шаблон Интерфейса командной строки разработчика Azure. Шаблон hello-azd предоставляет простую отправную точку для создания и развертывания приложений в Azure с помощью Интерфейса командной строки разработчика Azure (azd). В этом кратком руководстве развиваются основные понятия, представленные в статье Краткое руководство — Развертывание шаблона azd.

Предпосылки

Чтобы завершить работу с этим кратким руководством в браузере, вам потребуется:

  • Доступ к пространствам кода GitHub

В качестве альтернативы, для завершения работы с этим кратким руководством с помощью локальных инструментов, выполните следующие действия.

Изучение структуры шаблона Azure Developer CLI

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

  • infra папка — содержит всю инфраструктуру Bicep или Terraform в виде файлов кода для шаблона azd. azd выполняет эти файлы для создания ресурсов Azure, необходимых приложению.
  • src папка — содержит исходный код приложения. azd пакеты и развертывает код на основе конфигураций в azure.yaml.
  • azure.yaml файл конфигурации, который сопоставляет папки исходного кода в проекте с ресурсами Azure, определенными в папке infra для развертывания. Например, можно определить службу API и веб-интерфейсную службу в отдельных папках и сопоставить их с различными ресурсами Azure для развертывания.
  • .azure папка — содержит основные конфигурации Azure, такие как расположение для развертывания ресурсов.

Например, большинство azd шаблонов соответствуют следующей структуре папок:

Снимок экрана, показывающий структуру шаблона Azure Developer CLI.

Дополнительные сведения о структуре шаблона см. в статье о azd.

Настройка примера шаблона

hello-azd — это пример шаблона, предназначенный для демонстрации azd основных функций, которые можно развернуть в Azure с помощью одной команды. Шаблон предоставляет удобный пользовательский интерфейс с информацией о azd и небольшом демонстрационном инструменте, который позволяет отправлять и просматривать запросы в службу поддержки.

Шаблон поддерживает следующие функции:

  • Упаковывает и развертывает контейнерное приложение в Контейнеры приложений Azure
  • Создает ресурсы Azure, необходимые приложению, например базу данных Azure Cosmos DB.
  • Может автоматически настроить конвейер CI/CD с помощью azd pipeline config команды

Выполните следующие действия, чтобы настроить шаблон:

  1. Откройте репозиторий шаблонов hello-azd на сайте GitHub.

  2. Нажмите кнопку "Код" и выберите "Пространства кода".

  3. Создайте новое пространство Codespace для запуска полностью настроенной среды разработки в браузере. Возможно, потребуется подождать, пока среда инициализируется.

  4. После загрузки среды Codespaces инициализируйте azd шаблон с помощью azd init команды:

    azd init -t hello-azd
    
  5. При появлении запроса введите имя среды azd , например helloazd.

Обзор шаблона

Открыв шаблон в выбранном инструменте, вы можете просмотреть структуру папок, чтобы узнать, как azd работают шаблоны:

  1. Разверните папку src , чтобы просмотреть исходный код приложения.

    • Шаблон hello-azd включает контейнерное приложение .NET, которое предоставляет простой пользовательский интерфейс для изучения azd и управления примерами данных билета. azd также поддерживает другие языки, такие как JavaScript и Python.
    • При запуске azd upприложение упаковается в виде образа контейнера и развертывается в приложениях контейнеров Azure.
  2. Разверните папку infra , чтобы изучить инфраструктуру в виде файлов кода.

    • Этот шаблон использует файлы Bicep (.bicep) для создания ресурсов Azure, но также можно использовать Terraform (.tf).

    • Файл main.bicep создает ресурсы Azure, ссылаясь на другие модули Bicep в папке infra , например учетную запись хранения Azure:

      // Omitted...
      
      // Create a storage account
      module storage './core/storage/storage-account.bicep' = {
          name: 'storage'
          scope: rg
          params: {
          name: !empty(storageAccountName) ? storageAccountName : '${abbrs.storageStorageAccounts}${resourceToken}'
          location: location
          tags: tags
          containers: [
              {
              name: 'attachments'
              }
          ]
          }
      }
      
      // Omitted...
      
  3. В корне шаблона откройте azure.yaml файл для просмотра основных конфигураций шаблонов:

    • Шаблон определяет одну службу, под названием aca.

    • Конфигурация aca службы указывает azd упаковывать и развертывать исходный код в папке src в приложении контейнера Azure, подготовленном модулями Bicep, которые вы изучили ранее.

    • docker Конфигурации предписывают azd упаковывать и развертывать приложение в качестве контейнера.

      metadata:
        template: hello-azd-dotnet  # Specifies the template being used
      name: azd-starter  # Name of the project
      services:
        aca:  # Define the Azure Container App service
          project: ./src  # Path to the source code
          language: csharp  # Programming language
          host: containerapp  # Hosting service
          docker:
            path: ./Dockerfile  # Location of the Dockerfile
      

Обновление шаблона

Вы можете внести изменения в шаблон, чтобы повлиять на развернутые приложения и ресурсы. В этом примере вы вносите два небольших изменения в приложение и изучите развернутые результаты:

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

Чтобы внести эти изменения, выполните следующие действия.

  1. В папке src > Components > Pages откройте компонент Home.razor.

  2. Замените текст заголовка Hello, Azure Developer CLI! в верхней части страницы другим сообщением, например Hello, настроенным шаблоном! и сохраните изменения.

    <MudText Typo="Typo.h2" GutterBottom="true">Hello, customized template!</MudText>
    
  3. В папке infra откройте файл main.bicep.

  4. Найдите блок кода Bicep около строки 75, создающей учетную запись хранения и контейнер BLOB-объектов:

    // Create a storage account
    module storage './core/storage/storage-account.bicep' = {
      name: 'storage'
      scope: rg
      params: {
        name: !empty(storageAccountName) ? storageAccountName : '${abbrs.storageStorageAccounts}${resourceToken}'
        location: location
        tags: tags
        containers: [
          {
            name: 'attachments'
          }
        ]
      }
    }
    

    Замените код следующим фрагментом кода:

    // Create a storage account
    module storage './core/storage/storage-account.bicep' = {
      name: 'storage'
      scope: rg
      params: {
        name: !empty(storageAccountName) ? storageAccountName : '${abbrs.storageStorageAccounts}${resourceToken}'
        location: location
        tags: tags
        containers: [
          {
            name: 'attachments'
          },
          {
            name: 'archive'
          }
        ]
      }
    }
    
    

Запуск шаблона

После внесения изменений используйте azd up команду для подготовки и развертывания ресурсов приложения:

  1. Откройте терминал в каталоге проекта.

  2. Чтобы подготовить и развернуть шаблон, выполните azd up команду:

    azd up
    

    Эта команда:

    • Упаковка приложения для развертывания
    • Подготовка необходимых ресурсов Azure
    • Развертывание приложения с обновленными изменениями
    • Печать URL-адреса развернутого приложения
  3. Чтобы просмотреть обновленное приложение в реальном времени, откройте URL-адрес, отображаемый в azd журналах вывода консоли в браузере.

    Снимок экрана: обновленный заголовок приложения.

  4. Чтобы просмотреть созданные два контейнера BLOB, перейдите к созданной учетной записи хранения на портале Azure.

    Снимок экрана, показывающий созданные контейнеры BLOB-объектов.

Заключение

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

Дальнейшие действия