浏览和自定义 Azure 开发人员 CLI 模板

在本快速入门中,你将浏览和自定义 Azure 开发人员 CLI 模板。 hello-azd 模板提供了一个简单的起点,用于使用 Azure 开发人员 CLI 生成azd应用程序并将其部署到 Azure。 本快速入门扩展了 快速入门 - 部署 azd 模板 文章中演示的概念。

先决条件

要在浏览器中完成此快速入门,你将需要:

  • 访问 GitHub Codespaces

或者,要使用本地工具完成本快速入门,请执行以下操作:

探索 Azure 开发人员 CLI 模板结构

azd 模板是包含其他资产的标准代码存储库。 所有 azd 模板都基于 azd 约定共享类似的文件结构:

  • infra文件夹 - 包含 azd 模板的所有 Bicep 或 Terraform 基础结构即代码文件。 azd 执行这些文件以创建应用所需的 Azure 资源。
  • src folder - 包含应用源代码。 azd 根据配置 azure.yaml打包并部署代码。
  • azure.yaml file - 将项目中的源代码文件夹映射到部署文件夹中定义的 infra Azure 资源的配置文件。 例如,可以在单独的文件夹中定义 API 服务和 Web 前端服务,并将其映射到不同的 Azure 资源进行部署。
  • .azure 文件夹 - 包含重要的 Azure 配置,例如部署资源的位置。

例如,大多数 azd 模板都与以下文件夹结构匹配:

显示 Azure 开发人员 CLI 模板结构的屏幕截图。

有关模板结构的更多详细信息,请访问 azd文章。

设置示例模板

hello-azd 是一个示例模板,旨在展示可以使用单个命令部署到 Azure 的基本功能 azd 。 该模板提供了一个友好的 UI,其中包含关于 azd 以及一个可用于上传和查看支持票证的小型演示工具的信息。

该模板支持以下功能:

  • 将容器化应用打包并部署到 Azure 容器应用
  • 创建应用所需的 Azure 资源,例如 Azure Cosmos DB 数据库
  • 可以使用 命令自动azd pipeline config

按照以下步骤设置模板:

  1. 在 GitHub 上打开 hello-azd 模板存储库

  2. 选择 “代码 ”按钮,然后选择 “Codespaces”。

  3. 创建新的 Codespace 以在浏览器中启动完全配置的开发环境。 环境初始化可能需要等待片刻。

  4. 加载 Codespaces 环境后,使用azd以下命令初始化azd init模板:

    azd init -t hello-azd
    
  5. 出现提示时,输入环境的名称 azd ,例如 helloazd

浏览模板

在所选工具中打开模板后,可以浏览文件夹结构以探索模板的工作原理 azd

  1. src展开文件夹以查看应用的源代码。

    • hello-azd 模板包括一个容器化的 .NET 应用,该应用提供一个简单的 UI 来了解 azd 和管理示例票证数据。 azd 还支持其他语言,如 JavaScript 和 Python。
    • 运行 azd up时,应用打包为容器映像,并部署到 Azure 容器应用。
  2. 展开 infra 文件夹以浏览基础设施即代码文件。

    • 此模板使用 Bicep 文件 (.bicep) 创建 Azure 资源,但也可以使用 Terraform (.tf)。

    • 该文件 main.bicep 通过引用文件夹中的其他 Bicep 模块 infra (例如 Azure 存储帐户)来创建 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 指示 azdsrc 文件夹中的源代码打包并部署到由您之前浏览过的 Bicep 模块配置的 Azure 容器应用中。

    • 这些 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 容器而不是一个 Blob 容器

若要进行这些更改,请完成以下步骤:

  1. src > Components > Pages 文件夹中,打开 Home.razor 组件。

  2. 将页面顶部的 Hello、Azure 开发人员 CLI! 标头文本替换为其他消息,例如 Hello、自定义模板! 并保存所做的更改。

    <MudText Typo="Typo.h2" GutterBottom="true">Hello, customized template!</MudText>
    
  3. infra 文件夹中,打开 main.bicep 该文件。

  4. 大约在第 75 行找到创建存储帐户和 Blob 容器的 Bicep 代码块。

    // 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. 若要查看更新的应用程序实时,请在浏览器中打开控制台输出日志中打印的 azd URL。

    显示更新的应用标头的屏幕截图。

  4. 若要查看创建的两个 Blob 容器,请在 Azure 门户中导航到创建的存储帐户。

    显示已创建的 Blob 容器的屏幕截图。

结论

在本快速入门中,你了解了模板的结构 hello-azd 、自定义了模板的应用程序和基础结构,并使用 Azure 开发人员 CLI 将其部署到 Azure。 对于更高级的方案,请浏览其他模板或深入了解 azd 文档。

后续步骤