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


Руководство. Развертывание проекта .NET Aspire с помощью Azure Developer CLI

Azure Developer CLI (azd) позволяет развертывать проекты .NET Aspire с помощью операций GitHub или конвейеров DevOps Azure, автоматически настраивая необходимые параметры среды и проверки подлинности. В этой статье описывается процесс создания и развертывания проекта .NET Aspire на Azure Container Apps с помощью azd. Вы узнаете о следующих понятиях:

  • Узнайте, как работает интеграция azd с проектами .NET.NET Aspire
  • Создание и настройка репозитория GitHub или Azure DevOps для проекта .NET Aspire с помощью azd
  • Следите за рабочим процессом GitHub Actions и изучайте исполнение конвейера DevOps Azure, а также развертывания Azure.

Необходимые условия

Для работы с .NET.NET Aspireу вас должно быть установлено следующее:

Дополнительные сведения см. в разделе .NET.NET Aspire программы установки и инструментови .NET.NET Aspire пакета SDK.

  • Azure организацию DevOps или выберите существующую организацию
  • Создайте Azure токен личного доступа DevOps и сохраните его для последующего использования. Настройте токен со следующими разрешениями:
    • Пулы агентов (чтение, управление)
    • Сборка (чтение и выполнение)
    • Код (полный)
    • Проект и команда (чтение, запись и управление)
    • Разрешение (чтение, запись, выполнение и управление)
    • Подключения к службе (чтение, запрос и управление)

Кроме того, необходимо установить Azure Developer CLIлокально (версия 1.5.1 или новее). Ниже приведены распространенные параметры установки:

winget install microsoft.azd

Создайте решение .NET.NET Aspire

В качестве отправной точки в этой статье предполагается, что вы создали решение .NET.NET Aspire из шаблона .NET.NET Aspire начального приложения. Для получения дополнительной информации см. краткое руководство по : создание первого приложения .NET.NET Aspire.

Инициализация шаблона

  1. Откройте новое окно терминала и выполните cd в каталоге с вашим решением .NET.NET Aspire.

  2. Выполните команду azd init, чтобы инициализировать проект с помощью azd, которая будет проверять структуру локального каталога и определять тип приложения.

    azd init
    

    Дополнительные сведения о команде azd init см. в azd init.

  3. Выберите Использовать код в текущем каталоге, когда azd запрашивает два варианта инициализации приложений.

    ? How do you want to initialize your app?  [Use arrows to move, type to filter]
    > Use code in the current directory
      Select a template
    
  4. После сканирования каталога azd предложит убедиться, что он нашел правильный проект .NET.NET AspireAppHost. Выберите параметр Подтвердить и продолжить инициализацию моего приложения.

    Detected services:
    
      .NET (Aspire)
      Detected in: D:\source\repos\AspireSample\AspireSample.AppHost\AspireSample.AppHost.csproj
    
    azd will generate the files necessary to host your app on Azure using Azure Container Apps.
    
    ? Select an option  [Use arrows to move, type to filter]
    > Confirm and continue initializing my app
      Cancel and exit
    
  5. Введите имя среды, которое будет использоваться для именования подготовленных ресурсов в Azure и управления различными средами, такими как dev и prod.

    Generating files to run your app on Azure:
    
      (✓) Done: Generating ./azure.yaml
      (✓) Done: Generating ./next-steps.md
    
    SUCCESS: Your app is ready for the cloud!
    You can provision and deploy your app to Azure by running the azd up command in this directory. For more information on configuring your app, see ./next-steps.md
    

azd создает ряд файлов и помещает их в рабочий каталог. Эти файлы:

  • azure.yaml: описывает службы приложения, такие как проект AppHost .NET Aspire, и сопоставляет их с Azure ресурсами.
  • .azure/config.json: файл конфигурации, который сообщает azd, что такое текущая активная среда.
  • .azure/aspireazddev/.env: содержит определенные переопределения среды.

Создание репозитория и конвейера GitHub

Azure Developer CLI позволяет автоматически создавать конвейеры CI/CD с правильными конфигурациями и разрешениями для подготовки и развертывания ресурсов в Azure. azd также может создать репозиторий GitHub для приложения, если он еще не существует.

  1. Выполните команду azd pipeline config, чтобы настроить конвейер развертывания и безопасно подключить его к Azure:

    azd pipeline config
    
  2. Выберите подписку для сопровождения и развертывания ресурсов для приложения.

  3. Выберите местоположение Azure для использования ресурсов.

  4. При появлении запроса на создание нового репозитория Git в каталоге введите y и нажмите клавишу ВВОД.

    Заметка

    Для создания репозитория GitHub требуется войти в GitHub. Существует несколько вариантов, которые зависят от ваших предпочтений. После входа вам будет предложено создать новый репозиторий в текущем каталоге.

  5. Выберите Создать новый частный репозиторий GitHub, чтобы настроить удаленный git.

  6. Введите выбранное вами имя для нового репозитория GitHub или нажмите клавишу ВВОД, чтобы использовать имя по умолчанию. azd создает новый репозиторий в GitHub и настраивает его с необходимыми секретами, необходимыми для проверки подлинности в Azure.

    Снимок экрана: шаги по настройке конвейера.

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

Изучение рабочего процесса и развертывания действий GitHub

  1. Перейдите к новому репозиторию GitHub по ссылке, созданной командой azd.

  2. Перейдите на вкладку действий, чтобы просмотреть рабочие процессы репозитория. Вы увидите новый рабочий процесс, запущенный или уже завершенный. Выберите рабочий процесс, чтобы просмотреть шаги задания и сведения в журналах выполнения. Например, можно развернуть шаги, такие как установка .NET.NET Aspire рабочей нагрузки или развертывание приложения, чтобы увидеть подробности выполненного действия.

    Снимок экрана с этапами процесса выполнения GitHub Действий.

  3. Выберите Развернуть приложение, чтобы развернуть отображение журналов для этого шага. Вы увидите два URL-адреса конечных точек, отображаемые для apiservice и webfrontend. Выберите одну из этих ссылок, чтобы открыть их на другой вкладке браузера и изучить развернутое приложение.

    Снимок экрана, показывающий ссылки развернутого приложения.

Поздравляю! Вы успешно развернули проект .NET Aspire с помощью Azure Developer CLI и действий GitHub.

Создание репозитория и конвейера Azure DevOps

Важный

Как упоминалось в предварительных требованиях, необходимо создать Azure организацию DevOps или выбрать существующую организацию, чтобы выполнить последующие шаги. Вам также потребуется создать личный токен доступа (PAT) с разрешениями, перечисленными в предварительных требованиях.

Azure Developer CLI позволяет автоматически создавать конвейеры с правильными конфигурациями и разрешениями для подготовки и развертывания ресурсов в Azure. azd также может создать репозиторий Azure Pipelines для приложения, если он еще не существует.

  1. Выполните команду azd pipeline config, чтобы настроить конвейер развертывания и безопасно подключить его к Azure. Включите параметр --provider azdo для использования конвейеров Azure вместо конфигурации GitHub действий по умолчанию.

    azd pipeline config --provider azdo
    
  2. Выберите подписку для сопровождения и развертывания ресурсов для приложения.

  3. Выберите местоположение Azure для использования ресурсов.

  4. Вставьте созданный ранее личный маркер доступа.

  5. Введите имя созданной или выбранной организации DevOps Azure.

  6. При появлении запроса на создание репозитория в текущем каталоге введите y и нажмите Enter.

  7. При появлении запроса на настройку удаленного репозитория git выберите Создать новый Azure Проект DevOps.

  8. Введите уникальное имя для нового репозитория, например aspireazd. azd создает новый репозиторий в репозитории Azure и настраивает его с необходимыми секретами, необходимыми для проверки подлинности в Azure.

    Снимок экрана: шаги по настройке конвейера.

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

Изучение конвейера и развернутого приложения

  1. Перейдите к новому конвейеру Azure, используя ссылку на статус, предоставленную azd.

    Снимок экрана с успешным запуском конвейеров Azure.

  2. Выберите завершенный запуск пакетной обработки, чтобы просмотреть сводку.

    Снимок экрана, показывающий сводное представление запуска Azure Pipelines.

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

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

  4. На странице сведений о задании отображается состояние всех отдельных этапов. Выберите Provision Infrastructure, чтобы просмотреть журналы для этого этапа, которые подробно описывают все шаги подготовки, выполненные azd. В нижней части журналов запишите окончательное сообщение о состоянии и обратитесь к подготовленной группе ресурсов Azure.

  5. Выберите ссылку в нижней части журналов выходных данных подготовки, чтобы перейти к новой группе ресурсов Azure.

    Снимок экрана: развернутые Azure ресурсы.

    Заметка

    Вы также можете перейти непосредственно в новую группу ресурсов, найдя её через портал Azure. Название вашей группы ресурсов будет именем среды, которое вы указали в azd, с префиксом rg-.

  6. Выберите приложение контейнера веб-интерфейса, в котором размещена общедоступная часть вашего сайта.

  7. На странице сведений о веб-, нажмите на ссылку URL-адрес приложения, чтобы открыть сайт в браузере.

Важный

Если при просмотре вашего сайта в браузере возникла ошибка 403 Forbidden, убедитесь, что настройки доступа настроены правильно. На странице приложения веб-интерфейсе на портале перейдите к Ingress в области навигации слева. Убедитесь, что входящий трафик настроен на Прием трафика из любого места и сохраните изменения.

Поздравляю! Вы успешно развернули проект .NET Aspire с помощью конвейеров Azure Developer CLI и Azure.

Очистка ресурсов

Выполните следующую команду Azure CLI, чтобы удалить группу ресурсов, если вам больше не нужны созданные ресурсы Azure. При удалении группы ресурсов также удаляются ресурсы, содержащиеся в нем.

az group delete --name <your-resource-group-name>

Дополнительные сведения см. в разделе Очистка ресурсов в Azure.