注册表缓存
目录
这registry
缓存存储可以被视为inline
缓存。与inline
cache 中,registry
cache 与
允许更灵活地使用的镜像 -registry
支持的缓存可以做到
内联缓存可以做的所有事情,等等:
- 允许分离缓存和生成的镜像伪影,以便您可以 分发最终镜像,而不在内部缓存。
- 它可以有效地缓存多阶段构建
max
模式,而不仅仅是 最后阶段。 - 它可以与其他导出器一起使用以获得更大的灵活性,而不仅仅是
image
出口商。
默认的docker
司机。
要使用此功能,请使用其他驱动程序创建新的构建器。有关更多信息,请参阅构建驱动程序。
概要
与更简单的inline
cache 中,registry
cache 支持多种
配置参数:
$ docker buildx build --push -t <registry>/<image> \
--cache-to type=registry,ref=<registry>/<cache-image>[,parameters...] \
--cache-from type=registry,ref=<registry>/<cache-image> .
下表描述了您可以传递给--cache-to
和--cache-from
.
名字 | 选择 | 类型 | 违约 | 描述 |
---|---|---|---|---|
ref | cache-to ,cache-from | 字符串 | 要导入的缓存镜像的全名。 | |
mode | cache-to | min ,max | min | 要导出的缓存层,请参阅缓存模式。 |
oci-mediatypes | cache-to | true ,false | true | 在导出的清单中使用 OCI 媒体类型,请参阅 OCI 媒体类型。 |
image-manifest | cache-to | true ,false | false | 使用 OCI 媒体类型时,请为高速缓存镜像生成镜像清单而不是镜像索引,请参阅 OCI 媒体类型。 |
compression | cache-to | gzip ,estargz ,zstd | gzip | Compression type (压缩类型),请参阅 缓存压缩。 |
compression-level | cache-to | 0..22 | 压缩级别,请参阅 缓存压缩。 | |
force-compression | cache-to | true ,false | false | 强制应用压缩,请参见缓存压缩。 |
ignore-error | cache-to | 布尔 | false | 忽略缓存导出失败导致的错误。 |
您可以为ref
,只要它与
将镜像推送到的目标位置。您可以选择不同的标签
(例如foo/bar:latest
和foo/bar:build-cache
)、分隔镜像名称(例如foo/bar
和foo/bar-cache
),甚至不同的存储库(例如docker.io/foo/bar
和ghcr.io/foo/bar
).由您决定
策略。
如果--cache-from
target 不存在,则缓存导入步骤将
失败,但构建会继续。
延伸阅读
有关缓存的介绍,请参阅 Docker 构建缓存。
有关registry
cache 后端,请参阅 BuildKit README。