Azure 开发人员 CLI (azd) 模板是常规代码存储库,其中包括示例应用程序代码以及 azd 配置和基础结构文件。
azd 通过模板可以预配 Azure 资源、部署应用程序、配置 CI/CD 管道等。 可以创建自己的模板,也可以从模板存储库(例如 Awesome AZD)开始使用现有模板。 在本文中,你将了解以下概念:
-
azd模板如何让你预配和部署应用资源 -
azd模板的结构方式 - 如何确定是使用现有模板还是创建模板
- 浏览现有
azd入门模板
为何使用 Azure 开发人员 CLI 模板?
在为云构建正确构建和配置的环境感知应用时,开发人员通常会面临许多耗时且具有挑战性的任务。 团队在这些环境中必须考虑许多不同因素,例如创建资源、应用配置、设置监视和日志记录、构建 CI/CD 管道等一系列任务。
azd 模板可减少和简化这些职责,以帮助开发人员完成从本地开发到 Azure 上成功部署的应用的过程。
例如,假设你在运营票证管理和客户通信平台的公司工作,这需要以下 Azure 资源:
- 两个应用服务实例和一个用于托管前端 Web 应用和后端 API 的应用服务计划
- 用于存储安全应用机密的密钥保管库实例
- 用于永久存储应用数据的 Cosmos DB 数据库
- Azure Monitor 资源,例如 Application Insights 仪表板
- 用于管理可缩放消息传送的服务总线
- 用于确保通过自动化、可重复过程可以可靠地部署更改的 CI/CD 管道。
而不是从头开始,借助 azd,你可以利用现有的体系结构模板来预配和部署大部分资源。 然后,开发团队可以专注于构建应用,并针对模板体系结构进行较小的调整。
Azure 开发人员 CLI 模板的工作原理
Azure 开发人员 CLI 模板设计用于与azd命令合作,例如azd init和azd up。 这些模板包括命令用来执行任务(例如预配 Azure 资源并将应用代码部署到它们)的配置和基础结构即代码(IaC)文件。
例如,使用现有模板的典型 azd 工作流包括以下步骤:
使用
azd init--template参数运行命令,从 GitHub 克隆现有模板。azd init --template todo-nodejs-mongoazd auth login运行命令以向 Azure 订阅进行身份验证。azd auth login运行
azd up命令以预配模板资源并将其部署到 Azure。 该azd up命令利用模板中的配置和基础结构即代码 (IaC) 文件来预配 Azure 资源并将应用程序部署到这些资源。azd up在 Azure 中设置环境后,可以本地修改应用程序功能或 Azure 资源模板,然后再次运行
azd up以预配更改。
探索 Azure 开发人员 CLI 模板结构
azd 模板是包含一些附加资产的标准代码存储库。 所有 azd 模板都基于 azd 约定共享类似的文件结构:
-
infra文件夹 - 包含azd模板的所有 Bicep 或 Terraform 基础结构即代码文件。azd执行这些文件,以创建托管应用所需的 Azure 资源。 -
azure.yamlfile - 将项目中的源代码文件夹映射到部署文件夹中定义的infraAzure 资源的配置文件。 例如,可以在单独的文件夹中定义 API 服务和 Web 前端服务,并将其映射到不同的 Azure 资源进行部署。 -
.azure文件夹 - 包含重要的 Azure 配置和环境变量,例如部署资源的位置或其他订阅信息。 -
src文件夹 - 包含所有可部署的应用源代码。 某些azd模板排除文件夹src,并且仅提供基础结构资产,以便可以添加自己的应用程序代码。
例如,通用 azd 模板可能与以下文件夹结构匹配:
azd 模板还可以选择包含以下一个或多个文件夹:
-
.github文件夹 - 保存 GitHub Actions 的 CI/CD 工作流文件,这是 azd 的默认 CI/CD 提供程序。 -
.azdo文件夹 - 如果决定将 Azure Pipelines 用于 CI/CD,请定义此文件夹中的工作流配置文件。 -
.devcontainer文件夹 - 允许为应用程序设置 开发容器 环境。
从现有模板开始,或创建自己的模板
使用 azd 模板进行工作有两种主要方法:
-
从现有
azd模板开始。- 如果你刚开始使用
azd,或者正在寻找一个模板来构建具有类似体系结构和框架的新应用,则这是一个不错的选择。
- 如果你刚开始使用
-
将现有项目转换为
azd模板。- 当你已有一个现有应用,但你想要使其与
azd功能兼容时,这是一个不错的选择。
- 当你已有一个现有应用,但你想要使其与
以下部分提供有关这两个选项的详细信息。
从现有模板开始
azd 在 awesome-azd 模板库中,你可以找到广泛的模板选择。 这些模板为各种开发方案、语言框架和 Azure 服务提供基础结构和应用程序代码。 如果找到符合本地应用程序堆栈或所需体系结构的模板,则可以扩展模板代码并将其替换为你自己的模板代码
例如,以下 azd 模板提供常见应用体系结构和框架的起点:
为应用创建新 azd 模板
还可以将现有应用转换为 azd 模板,以使用预配和部署功能增强存储库。 此方法允许大多数控制并生成可重用的解决方案,以便将来在应用上进行开发工作。 创建自己的模板的高级步骤如下所示:
- 使用
azd init初始化项目模板。 - 在
infra文件夹中创建 Bicep 或 Terraform 基础结构即代码文件。 -
azure.yaml更新文件以将应用服务与 Azure 资源绑定。 - 使用
azd up进行预配和部署。
以下资源提供有关创建自己的模板的详细信息:
使用 azd 模板指南
请注意,与 Azure 开发人员 CLI 一起使用的每个模板都由其各自的所有者(可能或可能不是Microsoft)根据模板随附的协议获得许可。 确定适用于你选择使用的任何模板的许可证是你的责任。
Microsoft不负责任何非Microsoft模板,并且不筛选这些模板的安全、隐私、兼容性或性能问题。 任何Microsoft支持计划或服务都不支持与 Azure 开发人员 CLI 一起使用的模板,包括从Microsoft提供的模板。 提供的任何Microsoft模板均按原样提供,没有任何保证。