OCI 和 Docker 导出器

导出oci器将构建结果输出到 OCI 图像布局 tarball 中。导出docker器的行为方式相同,只不过它导出的是 Docker 映像布局。

docker驱动程序不支持这些导出器。docker-container如果您想生成这些输出,则必须使用或其他一些驱动程序。

概要

oci使用和导出器构建容器映像docker

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

下表描述了可用参数:

范围类型默认描述
name细绳指定图像名称
dest细绳小路
tartrue,falsetrue将输出捆绑到 tarball 布局中
compressionuncompressed, gzip, estargz,zstdgzip压缩类型,参见 压缩
compression-level0..22压缩级别,参见 压缩
force-compressiontrue,falsefalse强制应用压缩,请参阅 压缩
oci-mediatypestrue,false在导出器清单中使用 OCI 媒体类型。默认为truefortype=ocifalsefor type=docker。请参阅 OCI 媒体类型
annotation.<key>细绳将注释与相应的key和附加value到构建的图像上,请参阅 注释

注释

这些导出器支持使用参数添加 OCI 注释annotation,后跟使用点表示法的注释名称。以下示例设置org.opencontainers.image.title注释:

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

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

进一步阅读

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