OCI 和 Docker 导出程序

导出程序将构建结果输出到 OCI 镜像布局 tarball 中。导出器的行为方式相同,只是它导出了一个 Docker image 布局。ocidocker

docker 驱动程序不支持这些导出器。你 必须使用或其他驱动程序(如果要生成这些) 输出。docker-container

概要

使用 和 exporters 构建容器镜像:ocidocker

$ docker buildx build --output type=oci[,parameters] .
$ docker buildx build --output type=docker[,parameters] .

下表描述了可用的参数:

参数类型违约描述
name字符串指定镜像名称
dest字符串路径
tartrue,falsetrue将输出捆绑到 tarball 布局中
compressionuncompressed,,,gzipestargzzstdgzip压缩类型,请参阅压缩
compression-level0..22压缩级别,请参阅 压缩
force-compressiontrue,falsefalse强制应用压缩,请参阅压缩
oci-mediatypestrue,false在导出程序清单中使用 OCI 媒体类型。默认为 for 和 for 。请参阅 OCI 介质类型truetype=ocifalsetype=docker
annotation.<key>字符串将注释与相应的 和 附加到构建的镜像,请参阅注释keyvalue

附注

这些导出程序支持使用参数 OCI 注释 后跟使用点表示法的注释名称。以下示例将 注释:annotationorg.opencontainers.image.title

$ docker buildx build \
    --output "type=<type>,name=<registry>/<image>,annotation.org.opencontainers.image.title=<title>" .

有关注释的更多信息,请参阅 BuildKit 文档

延伸阅读

有关 or 导出器的更多信息,请参阅 BuildKit README。ocidocker