本指南中的以下步骤重点介绍使用 Cloud Build 的远程构建。对于本地构建,请参阅缓存映像说明和 pack
命令参考文档页面。
将缓存映像与 Cloud Build 结合使用
您必须创建构建配置文件(例如 cloudbuild.yaml
),才能在 Cloud Build 中启用 Buildpack 缓存映像。构建配置文件会指示 pack
CLI 将构建映像发布到指定的远程代码库。然后,此构建映像会用作后续构建的“缓存映像”。
请注意,使用新构建配置文件运行的第一个构建使用 pack
命令来创建初始构建映像缓存,然后将其推送到您的代码库。只有在初始缓存映像可用于构建后,您才能看到构建性能提升。
创建构建配置文件
如需定义 Cloud Build 配置文件,您必须编写 YAML 文件,其中包含使用 pack
CLI 创建映像的构建步骤。
在以下示例 cloudbuild.yaml
中,构建使用 buildpack 为应用或函数创建映像,创建初始构建缓存映像,并将其推送到代码库:
options: logging: CLOUD_LOGGING_ONLY pool: {} projectId: PROJECT_ID steps: - name: gcr.io/k8s-skaffold/pack entrypoint: pack args: - build - LOCATION-docker.pkg.dev/PROJECT_ID/REPO_NAME/IMAGE_NAME - --builder - gcr.io/buildpacks/builder:latest - --cache-image - LOCATION-docker.pkg.dev/PROJECT_ID/REPO_NAME/CACHE_IMAGE_NAME:latest - --publish
您需要将其中的:
- 将
LOCATION
替换为容器代码库的区域名称。例如:us-west2
- 将
PROJECT_ID
替换为您的 Google Cloud 项目的 ID。 - 将
REPO_NAME
替换为您的 Docker 代码库的名称。 - 将
IMAGE_NAME
替换为应用或函数容器映像的名称。 - 将
CACHE_IMAGE_NAME
替换为构建缓存映像的名称。
另请在 pack build
命令参考文档中参阅您可以在构建配置文件中定义的其他受支持的参数。
使用缓存映像远程构建
要运行构建,请添加 --config
命令标志并指定配置文件。例如,要使用名为 cloudbuild.yaml
的文件,您可以运行以下命令:
gcloud builds submit --config cloudbuild.yaml --pack image=example-docker.pkg.dev/my-project-id/repo/example-image