Amazon S3 缓存
目录
限制
这是一项实验性功能。界面和行为不稳定,并且 在未来版本中可能会更改。
缓存存储将生成的构建缓存上传到 Amazon S3 文件存储服务或其他与 S3 兼容的服务,例如 MinIO。s3
默认驱动程序不支持此缓存存储后端。
要使用此功能,请使用其他驱动程序创建新的构建器。有关更多信息,请参阅构建驱动程序。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> .
下表描述了您可以传递给 和 的可用 CSV 参数。--cache-to
--cache-from
名字 | 选择 | 类型 | 违约 | 描述 |
---|---|---|---|---|
region | cache-to ,cache-from | 字符串 | 必填。地理位置。 | |
bucket | cache-to ,cache-from | 字符串 | 必填。S3 存储桶的名称。 | |
name | cache-to ,cache-from | 字符串 | 缓存镜像的名称。 | |
endpoint_url | cache-to ,cache-from | 字符串 | S3 存储桶的终端节点。 | |
blobs_prefix | cache-to ,cache-from | 字符串 | 用于 blob 文件名前面的前缀。 | |
upload_parallelism | cache-to | 整数 | 4 | 并行层上传的数量。 |
touch_refresh | cache-to | 时间 | 24h | 更新未更改缓存层的时间戳的间隔。 |
manifests_prefix | cache-to ,cache-from | 字符串 | 用于 manifest 文件名前面的前缀。 | |
use_path_style | cache-to ,cache-from | 布尔 | false | When ,在 URL 中使用 ,而不是 hostname。true bucket |
access_key_id | cache-to ,cache-from | 字符串 | 请参阅 身份验证。 | |
secret_access_key | cache-to ,cache-from | 字符串 | 请参阅 身份验证。 | |
session_token | cache-to ,cache-from | 字符串 | 请参阅 身份验证。 | |
mode | cache-to | min ,max | min | 要导出的缓存层,请参阅缓存模式。 |
ignore-error | cache-to | 布尔 | false | 忽略缓存导出失败导致的错误。 |
认证
Buildx 可以重用现有的 AWS 凭证,这些凭证使用
credentials 文件或环境变量,用于将缓存推送和拉取到 S3。
或者,您也可以使用 、 和 属性直接在 CLI 上指定凭证。access_key_id
secret_access_key
session_token
请参阅 AWS Go 开发工具包,指定凭证,以了解有关 使用环境变量和凭证文件的身份验证。
延伸阅读
有关缓存的介绍,请参阅 Docker 构建缓存。
有关缓存后端的更多信息,请参阅 BuildKit README。s3