指定本地缓存 - AWS CodeBuild

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

指定本地缓存

您可以使用 AWS CLI、控制台、SDK 或 CloudFormation 来指定本地缓存。有关本地缓存的更多信息,请参阅本地缓存

指定本地缓存 (CLI)

您可以使用中的--cache参数 AWS CLI 来指定三种本地缓存类型中的每一种类型。

  • 指定源缓存:

    --cache type=LOCAL,mode=[LOCAL_SOURCE_CACHE]
  • 指定 Docker 层缓存:

    --cache type=LOCAL,mode=[LOCAL_DOCKER_LAYER_CACHE]
  • 指定自定义缓存:

    --cache type=LOCAL,mode=[LOCAL_CUSTOM_CACHE]

有关更多信息,请参阅 创建构建项目 (AWS CLI)

指定本地缓存(控制台)

您可以使用控制台的构件部分指定缓存。对于缓存类型,选择 Amazon S3本地。如果您选择本地,请选择三个本地缓存选项中的一个或多个。

选择三个本地缓存选项中的一个或多个来指定本地缓存。

有关更多信息,请参阅 创建构建项目(控制台)

指定本地缓存 (CloudFormation)

如果使用 CloudFormation 指定本地缓存,则在Cache属性上,为Type,指定LOCAL。以下 YAML 格式的示例 CloudFormation 代码指定了所有三种本地缓存类型。您可以指定这些类型的任意组合。如果您使用 Docker 层缓存,在 Environment 下,您必须将 PrivilegedMode 设置为 true,将 Type 设置为 LINUX_CONTAINER

CodeBuildProject: Type: AWS::CodeBuild::Project Properties: Name: MyProject ServiceRole: <service-role> Artifacts: Type: S3 Location: <bucket-name> Name: myArtifact EncryptionDisabled: true OverrideArtifactName: true Environment: Type: LINUX_CONTAINER ComputeType: BUILD_GENERAL1_SMALL Image: aws/codebuild/standard:5.0 Certificate: <bucket/cert.zip> # PrivilegedMode must be true if you specify LOCAL_DOCKER_LAYER_CACHE PrivilegedMode: true Source: Type: GITHUB Location: <github-location> InsecureSsl: true GitCloneDepth: 1 ReportBuildStatus: false TimeoutInMinutes: 10 Cache: Type: LOCAL Modes: # You can specify one or more cache mode, - LOCAL_CUSTOM_CACHE - LOCAL_DOCKER_LAYER_CACHE - LOCAL_SOURCE_CACHE
注意

默认情况下,为非 VPC 构建启用 Docker 进程守护程序。如果您想使用 Docker 容器进行 VPC 构建,请参阅 Docker 文档网站上的运行时权限和 Linux 功能并启用特权模式。此外,Windows 不支持特权模式。

有关更多信息,请参阅 创建构建项目 (CloudFormation)