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 参数。
名称 | 选项 | 类型 | 默认值 | 描述 |
---|---|---|---|---|
region | cache-to ,cache-from | String | 必需。地理位置。 | |
bucket | cache-to ,cache-from | String | 必需。S3 存储桶的名称。 | |
name | cache-to ,cache-from | String | 缓存镜像的名称。 | |
endpoint_url | cache-to ,cache-from | String | S3 存储桶的端点。 | |
blobs_prefix | cache-to ,cache-from | String | 添加到 blob 文件名开头的前缀。 | |
upload_parallelism | cache-to | Integer | 4 | 并行上传的层数。 |
touch_refresh | cache-to | Time | 24h | 更新未更改缓存层时间戳的间隔。 |
manifests_prefix | cache-to ,cache-from | String | 添加到清单文件名前缀。 | |
use_path_style | cache-to ,cache-from | Boolean | false | 当为 true 时,在 URL 中使用 bucket 而不是主机名。 |
access_key_id | cache-to ,cache-from | String | 请参阅身份验证。 | |
secret_access_key | cache-to ,cache-from | String | 请参阅身份验证。 | |
session_token | cache-to ,cache-from | String | 请参阅身份验证。 | |
mode | cache-to | min ,max | min | 要导出的缓存层,请参阅缓存模式。 |
ignore-error | cache-to | Boolean | false | 忽略因缓存导出失败导致的错误。 |
认证
Buildx 可以重复使用现有 AWS 凭据(通过凭据文件或环境变量配置)来推送和拉取 S3 缓存。或者,您也可以直接在 CLI 上使用 access_key_id
、secret_access_key
和 session_token
属性来指定凭据。
有关使用环境变量和凭据文件进行身份验证的详细信息,请参阅AWS Go SDK,指定凭据。
进一步阅读
有关缓存的介绍,请参阅Docker 构建缓存。
有关 s3
缓存后端的更多信息,请参阅BuildKit README。