Amazon S3 缓存
目录
受限
这是一个实验性功能。界面和行为不稳定,可能在将来的版本中发生更改。
s3
缓存存储会将生成的构建缓存上传到Amazon S3文件存储服务或其他与S3兼容的服务,例如MinIO。
此缓存存储后端不支持默认的docker
驱动程序。要使用此功能,请使用不同的驱动程序创建一个新的构建器。有关更多信息,请参见构建驱动程序。
概要
$ docker buildx build --push -t <user>/<image> \
--cache-to type=s3,region=<region>,bucket=<bucket>,name=<cache-image>[,parameters...] \
--cache-from type=s3,region=<region>,bucket=<bucket>,name=<cache-image> .
下表描述了您可以传递给--cache-to
和--cache-from
的可用CSV参数。
名称 | 选项 | 类型 | 默认值 | 描述 |
---|---|---|---|---|
区域 | cache-to ,cache-from | 字符串 | 必需。地理位置。 | |
桶 | cache-to ,cache-from | 字符串 | 必需。S3存储桶的名称。 | |
名称 | cache-to ,cache-from | 字符串 | 缓存镜像的名称。 | |
端点URL | cache-to ,cache-from | 字符串 | S3存储桶的端点。 | |
blobs_prefix | cache-to ,cache-from | 字符串 | 要添加到blob文件名之前的首缀。 | |
upload_parallelism | cache-to | 整数 | 4 | 并行上传层的数量。 |
touch_refresh | cache-to | 时间 | 24小时 | 更新未更改缓存层时间戳的间隔。 |
manifests_prefix | cache-to ,cache-from | 字符串 | 要添加到清单文件名之前的首缀。 | |
use_path_style | cache-to ,cache-from | 布尔值 | false | 当true 时,在URL中使用bucket 而不是主机名。 |
access_key_id | cache-to ,cache-from | 字符串 | 参见身份验证。 | |
secret_access_key | cache-to ,cache-from | 字符串 | 参见身份验证。 | |
session_token | cache-to ,cache-from | 字符串 | 参见身份验证。 | |
模式 | cache-to | min ,max | min | 要导出的缓存层,请参见缓存模式。 |
忽略错误 | cache-to | 布尔值 | false | 忽略因缓存导出失败引起的错误。 |
身份验证
Buildx 可以重用现有的 AWS 凭证(使用凭证文件或环境变量配置),用于将缓存推送到 S3 和从 S3 拉取缓存。或者,您可以使用 access_key_id
、secret_access_key
和 session_token
属性直接在 CLI 上指定凭证。
有关使用环境变量和凭证文件进行身份验证的详细信息,请参阅AWS Go SDK,指定凭证。
进一步阅读
有关缓存的介绍,请参见Docker构建缓存。
有关s3
缓存后端的更多信息,请参见BuildKit自述文件。