你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
Microsoft Dev Box 团队自定义
让开发人员开始进入新项目或团队可能是一个复杂且耗时的过程。 Microsoft Dev Box 团队自定义功能可帮助你简化开发人员环境的设置。 借助团队自定义,可以使用必要的应用程序、工具、存储库、代码库、包和生成脚本来配置随时可以编码的工作站。
可以使用团队自定义为每个开发团队定义共享的 Dev Box 配置,而无需投资设置映像解决方案(如 Packer 或 Azure 虚拟机 (VM) 映像模板)。 团队自定义提供了一种轻量级的替代方法,让中央平台工程团队可以将 Dev Box 配置管理委派给使用它们的团队。
团队自定义还提供了一种内置的方式来优化团队的 Dev Box 自定义设置,方法是将它们平展到自定义映像中。 你可以使用相同的自定义文件,而无需管理添加的基础结构,也无需维护映像模板。
重要
Dev Box 团队自定义功能目前以预览版提供。 有关预览版状态的详细信息,请参阅 Microsoft Azure 预览版的补充使用条款。 该文档定义了适用于测试版、预览版或尚未正式发布的 Azure 功能的法律术语。
Dev Box 团队自定义的工作原理
为组织配置 Dev Box 团队自定义时,仔细规划和明智的决策至关重要。 下图概述了这一过程,并突出显示了关键决策点。
- 配置开发人员中心:
- 启用项目级目录。
- 为项目管理员分配权限。
- 决定是否将目录与自定义可重用组件配合使用:
- 开发人员中心:
- 使用 PowerShell 或 WinGet 语句。
- 你自己的目录:
- Azure Repos 或 GitHub 中的主机。
- 添加任务。
- 附加到开发人员中心或项目。
- 开发人员中心:
- 创建自定义文件:
- 创建名为 imagedefinition.yaml 的自定义文件。
- 在开发箱池中指定映像:
- 创建或修改开发箱池,并将 imagedefinition.yaml 指定为映像定义。
- 选择如何使用映像定义:
- 针对团队自定义进行优化。
- 在每次创建开发箱时生成。
- 创建开发箱:
- 使用开发人员门户从配置的池创建开发箱。
什么是自定义文件?
开发箱自定义功能使用 YAML 格式化文件来指定一个任务列表,以便在开发人员创建开发箱时从目录中应用该列表。 这些任务可标识目录任务,并提供要安装的软件的名称等参数。 然后,可将该自定义文件提供给开发人员使用。
可以在自定义文件中使用 Azure Key Vault 中的机密来克隆专用存储库,也可使用你创作的任何需要访问令牌的自定义任务。
什么是任务?
Dev Box 自定义任务是 PowerShell 脚本的包装器。 你可以使用它们来定义团队可在自定义设置中使用的可重用组件。 WinGet 和 PowerShell 可用作基元任务。
在创建任务时,需确定哪些任务需要在系统上下文中运行,哪些任务可以在用户上下文中运行(登录后)。 团队自定义可以在这两种上下文中运行。 个人自定义只能在用户上下文中运行。
团队自定义与个人自定义之间的差异
个人开发人员在创建 Dev Box 时,可以附加基于 YAML 的自定义文件,以控制开发环境。 开发人员只能对个人设置和应用使用个人自定义。 个人自定义文件中指定的任务只能在用户登录后在用户上下文中运行。
尽管开发团队可以共享公用的 YAML 文件,但此方法效率低下且容易出错。 这还可能违反合规策略。 Dev Box 团队自定义提供了一种工作流程,供开发人员团队负责人、项目管理员和开发人员中心管理员在开发箱池上预配置自定义文件。 这样,创建开发箱的开发人员就无需查找和上传自定义文件。
关键术语
使用 Dev Box 团队自定义时,应熟悉以下关键术语:
- 目录:
- 存储在代码存储库中,或存储在自定义文件的单独存储库中。
- 托管在 GitHub 或 Azure Repos 上。
- 附加到开发人员中心或项目,使任务可供开发人员团队访问。
- 任务:
- 执行特定操作,例如安装软件。
- 包含一个或多个 PowerShell 脚本,以及一个 task.yaml 文件。
- 自定义文件:
- 定义开发箱的任务,基于 YAML。
- 通过指定开发箱的基础映像和自定义选项,在整个团队中共享时提供映像定义。