托管 DevOps 池提供了多个用于在池中运行管道的虚拟机映像选项。 可以使用所选Azure 市场 VM 映像创建池,使用自己的自定义 Azure 计算库映像,或使用与 Azure Pipelines Microsoft托管代理相同的映像。
重要
以下映像在托管 DevOps 池中已被弃用。
- Azure Pipelines - Windows Server 2019
- Ubuntu 20.04
有关详细信息,请参阅托管 DevOps 池映像弃用计划。
可以使用单个映像或多个映像配置托管 DevOps 池。 当池有多个映像时,管道应指定要使用 别名运行的映像。
选择池的映像
创建托管 DevOps 池时会选择默认映像。 可以保留默认选项,也可以在创建池期间更改它。 若要在创建池后配置映像,请转到 “设置>池”, 从映像库中选择“添加”,然后为池选择一个或多个映像。
如果选择单个映像,则所有管道都使用该映像在池中运行。 如果选择多个映像,则可以指定按管道使用的映像。 有关详细信息,请参阅 每个池使用多个镜像。
重要
如果池中有多个映像,并且不使用管道中的要求来指定映像,则管道将使用池中第一个列出的映像运行。 可以通过更改images
部分中的fabricProfile
列表中的图像顺序(如果使用模板),或者在 Azure 门户中使用拖放功能对映像列表中的图像进行排序来调整池中的图像顺序。
可以从以下类型的图像中进行选择。
- Azure Pipelines 映像 - 从 Microsoft 托管代理使用的相同的映像中进行选择。
- 所选市场映像 - 从一组精选Microsoft已发布的 Azure 市场 VM 映像中进行选择。
- Azure 计算画廊映像 - 从您自己的 Azure 计算画廊映像中进行选择。 必须将读取者角色分配给要使用的 Azure 计算库映像的 DevOpsInfrastructure 服务主体。 有关详细信息,请参阅 授予读取者角色对 DevOpsInfrastructure 服务主体的访问权限。
Azure Pipelines 映像
托管 DevOps 池提供了多个预配置映像,这些映像与 Azure Pipelines 的所选Microsoft托管代理具有相同的软件。
托管 DevOps 池中提供的 Azure Pipelines 映像的生命周期遵循 Microsoft 托管代理映像的生命周期。 如果 Microsoft 托管代理中的映像被弃用,则相应的托管 DevOps 池也会在相似的时间范围内被弃用。 Microsoft托管代理中可用的映像版本可能与托管 DevOps 池中针对同一映像类型的可用映像版本略有不同。
有关托管 DevOps 池映像生命周期的更多信息,请参阅映像生命周期。
每个映像都包含以下已安装的软件。
映像 | 包含的软件 |
---|---|
Azure Pipelines - Windows Server 2022 | 包含的软件 |
Azure Pipelines - Windows Server 2019 | 包含的软件 |
Azure Pipelines - Ubuntu 24.04 | 包含的软件 |
Azure Pipelines - Ubuntu 22.04 | 包含的软件 |
Azure Pipelines - Ubuntu 20.04 | 包含的软件 |
重要
以下映像在托管 DevOps 池中已被弃用。
- Azure Pipelines - Windows Server 2019
- Ubuntu 20.04
有关详细信息,请参阅托管 DevOps 池映像弃用计划。
所选市场映像
托管 DevOps 池提供一组特选Microsoft已发布Azure 市场 VM 映像,以便在池中使用。
Azure 计算库映像
选择 Azure 计算库映像 以指定订阅中提供的任何 Azure 计算库中的映像。 支持以下操作系统的通用映像。
- Windows Server 2019
- Windows Server 2022
- Windows 11
- Ubuntu 20.04
- Ubuntu 22.04
- Ubuntu 24.04
- Debian 9
- RHEL 8
- RHEL 9
- SUSE 12
- SUSE 15
重要
托管 DevOps 池仅支持 通用 Azure 计算库映像。
授予读者角色对 DevOpsInfrastructure 服务主体的访问权限
重要
将读取者角色分配给要使用的 Azure 计算库映像的 DevOpsInfrastructure 服务主体。 如果选择未配置此访问权限的 Azure 计算库映像,池创建会失败。 可以在映像级别或库中所有映像的映像库级别单独分配“读取者”角色。
转到Azure 门户中所需的资源。 若要能够使用库中的所有映像,请转到Azure 门户中的 Azure 计算库。 若要仅使用特定映像,请转到该映像。
选择“访问控制 (IAM)”。
选择“添加”>“添加角色分配”,打开“添加角色分配”页面。
分配以下角色。 有关详细步骤,请参阅 使用 Azure 门户分配 Azure 角色。
设置 值 角色 读者 将访问权限分配到 服务主体 成员 DevOps基础设施
将每个池的多个映像与别名一起使用
如果池中有多个映像,可以通过引用该映像的别名来配置 Azure DevOps 管道以使用特定映像。
如果池中有多个映像,并且不使用管道中的要求来指定映像,则管道将使用池中第一个列出的映像运行。 可以通过更改images
部分中的fabricProfile
列表中的图像顺序(如果使用模板),或者在 Azure 门户中使用拖放功能对映像列表中的图像进行排序来调整池中的图像顺序。
提示
如果您的流水线在首次向池添加新映像后遇到问题,请检查列表中映像的排序,并考虑使用条件和别名来显式指定每个流水线要使用的映像。
配置映像别名
若要添加和管理映像别名,请转到池设置的 “映像 ”部分,然后选择 ..., 添加别名。
将任何所需别名添加到 别名 列表,然后选择“ 保存”。
以下示例显示了一个池,其中包含两个 Azure Pipelines 映像和一个选定的市场映像。 Azure Pipeline 映像显示其默认别名,所选市场映像具有名为 ubuntu-24.04-gen2 的单个配置别名。
Azure Pipelines 映像预定义别名
除了配置的任何别名之外,Azure Pipelines 映像还具有以下预定义别名。
Azure Pipelines 映像 | 预定义别名 |
---|---|
Azure Pipelines - Windows Server 2022 | windows-2022 |
Azure Pipelines - Windows Server 2019 | windows-2019 |
Azure Pipelines - Ubuntu 24.04 | ubuntu-24.04 |
Azure Pipelines - Ubuntu 22.04 | ubuntu-22.04 |
Azure Pipelines - Ubuntu 20.04 | ubuntu-20.04 |
使用要求指定图像
如果池中有多个映像,则可以使用将管道配置为在特定映像上运行。 在管道中指定 ImageOverride
需求时,托管 DevOps 池仅使用该映像将作业发送到代理。
若要在具有 ubuntu-24.04-gen2
别名的上一个示例中的 Ubuntu 24.04 映像上运行管道,请在管道部分指定以下需求 pool
。
pool:
name: fabrikam-dev-pool # Name of Managed DevOps Pool
demands:
- ImageOverride -equals ubuntu-24.04-gen2
重要
不要将 ImageOverride
别名的引号放在需求中,即使名称中有空格也是如此。
若要在池中使用 Azure Pipelines 映像运行管道,请使用上表中的别名。 若要在上一示例中的 Azure Pipelines Windows Server 2022 映像上运行管道,请在管道部分指定以下需求 pool
。
pool:
name: fabrikam-dev-pool # Name of Managed DevOps Pool
demands:
- ImageOverride -equals windows-2022
映像生命周期
当映像的操作系统达到其支持生命周期的末期时,托管 DevOps Pools 代理映像将会停用,而当基于新版本操作系统的映像发布时,基于旧版本操作系统的映像将会停用。
- Azure Pipelines 映像提供相同的映像,并遵循与 Microsoft 托管代理类似的弃用计划。
- 当映像的操作系统达到其支持生命周期的末期时,选定的市场映像通常会停用。
映像弃用计划
Azure Pipelines - Windows Server 2019 映像弃用计划
托管 DevOps 池正在删除 Azure Pipelines – Windows Server 2019 映像。
- 使用 Azure Pipelines 创建新池 – 从 2025 年 7 月 1 日起,Windows Server 2019 将禁用,但这些映像上的现有池将继续运行到 2025 年 8 月 30 日。
- 2025 年 9 月 1 日,将禁用 Azure Pipelines – Windows Server 2019 映像。 使用此映像的代理不会进行预配,并且管道不会运行。
若要在使用 Azure Pipelines – Windows Server 2019 映像时让托管 DevOps 池保持运行,请更新到 Azure Pipelines - Windows Server 2022 映像。 或者,可以使用选定的市场映像中的 Windows Server 2019 映像或自己的 Azure Compute Gallery Windows 2019 映像。 请注意,市场映像不包括在 Azure Pipelines 映像中找到的预安装软件。
Ubuntu 20.04 映像弃用计划
Ubuntu 20.04 LTS 标准支持即将于 2025 年 5 月 31 日结束,托管 DevOps 池将从 所选市场映像 和 Azure Pipelines 映像中删除 Ubuntu 20.04 映像。
- 从 2025 年 6 月 1 日起,使用 Ubuntu 20.04 所选市场映像或 Azure Pipelines 映像创建新池将停止支持,但基于这些映像的现有池将继续运行到 2025 年 7 月 1 日。
- 2025年7月1日,将禁用使用Ubuntu 20.04的选定市场镜像或Azure Pipelines镜像的资源池。 使用这些映像的代理将不会被配置,并且管道将无法运行。
若要保持当前使用 Ubuntu 20.04 运行的托管 DevOps 池,请将 Ubuntu 20.04 映像更新为 Ubuntu 22.04 或 24.04(建议)。 有关详细信息,请参阅 “选择池映像”。 如果您的池中有多个 图像,请更新 Ubuntu 图像的 别名,以确保需要 Ubuntu 的管道能够使用所需的图像运行。