本文档介绍了如何控制 build 工作器更新基础操作系统和 Docker 新版本的频率。通过选择发布渠道,您可以在弹性构建流程与最新的安全性和功能之间取得平衡。
您还可以选择特定的 worker 版本,而不是渠道。
可用的渠道
以下是可用的发布渠道:
| 渠道 | 更新频率 | 用途 |
|---|---|---|
regular |
在每个版本发布后的四周内 | 默认渠道,也是建议用于安全合规性的渠道。 频繁更新要求您的 CI 流程与新版本保持同步。 |
rapid |
始终为最新可用版本 | 在最新安全更新和功能发布后立即获取。 新的基础操作系统和 Docker 版本可能会中断 CI 流程并导致其他问题。 |
stable |
每年一次,通常在 2 月份 | 此渠道注重稳定性,而非提供新功能,有助于提高 CI 流程的弹性。不过,暴露于漏洞的风险也更高。底层 Docker 版本可能无法从 Docker 接收补丁。 |
请参阅可用版本,了解每个渠道中的版本。
指定发布渠道或版本
选择三个发布渠道之一时,您是在选择更新 Docker 版本和工作器映像操作系统的频率。选择发布版本时,您实际上是在为工作器映像选择 Docker 和 Debian 的特定版本。
您可以指定渠道或发布版本。您可以在以下三个位置指定这些变量:
在专用池中
如果您使用的是专用池,则可以通过更新专用池配置或在 Google Cloud 控制台中创建或更新池时选择渠道或版本,来指定专用池中的渠道或发布版本。如果您这样做,相应渠道或版本随后会用于使用该池的所有 build,并且您无法在 build 配置或命令行中替换它。
在 build 配置中
如果您使用的是默认池,则可以在 build 配置文件中指定渠道或版本。然后,该渠道或版本将用于使用相应 build 配置调用的所有 build。
在调用 build 时通过命令行
使用
gcloud builds submit调用 build 时,您可以添加--worker-release标志。您为此标志提供的值会替换您在 build 配置文件中配置的值。如果 build 在专用池中运行,您就无法使用此标志,因为池会决定使用哪个版本。
专用池
如需为专用池指定发布版本或渠道,请执行以下操作:
使用以下命令更新专用池配置:
gcloud builds worker-pools update PRIVATEPOOL_ID \
--worker-release=CHANNEL_OR_VERSION \
--region=REGION \
--project=PROJECT_ID
替换以下内容:
PRIVATEPOOL_ID,其中包含您将用于通过此渠道运行 build 的专用池的 ID。
将 CHANNEL_OR_VERSION 替换为您要使用的渠道的名称:regular、rapid 或 stable,或者替换为特定版本号。
将 REGION 替换为专用池所在的区域。
将 PROJECT_ID 替换为包含私有池的项目的 ID。
build 配置
如需在build 配置文件中指定发布版本或渠道,请执行以下操作:
在 options stanza 下添加以下属性:
steps:
# ...
options:
workerRelease: CHANNEL_OR_VERSION
将 CHANNEL_OR_VERSION 替换为您要使用的渠道的名称:regular、rapid 或 stable,或者替换为特定版本号。
构建调用
如需在 build 调用中指定发布渠道,请执行以下操作:
向 gcloud builds submit 命令添加以下标志:
--worker-release=CHANNEL_OR_VERSION
将 CHANNEL_OR_VERSION 替换为您要使用的渠道的名称:regular、rapid 或 stable,或者替换为特定的版本号。
可用的版本
下表列出了可用的工作节点版本、支持每个版本的渠道,以及每个版本对应的底层 Docker 和 Debian 版本:
| 发布版本 | 渠道 | 支持截止日期 | 基础版本 |
|---|---|---|---|
2026.09 |
rapid、regular、stable |
2029-09-30 | Docker Engine 29 Debian 13 |
legacy |
2028-03-31 | Docker Engine 20.10 Debian 11 |