镜像和注册表导出器
目录
image
导出器将构建结果输出为容器镜像格式。registry
导出器与其相同,但通过设置push=true
自动推送结果。
概要
使用image
和registry
导出器构建容器镜像
$ docker buildx build --output type=image[,parameters] .
$ docker buildx build --output type=registry[,parameters] .
下表描述了您可以传递给type=image
的--output
的可用参数。
参数 | 类型 | 默认值 | 描述 |
---|---|---|---|
name | 字符串 | 指定镜像名称 | |
push | true ,false | false | 创建镜像后推送。 |
push-by-digest | true ,false | false | 不带名称地推送镜像。 |
registry.insecure | true ,false | false | 允许推送至不安全的注册表。 |
dangling-name-prefix | <value> | 使用prefix@<digest> 命名镜像,用于匿名镜像 | |
name-canonical | true ,false | 添加附加规范名称name@<digest> | |
compression | uncompressed ,gzip ,estargz ,zstd | gzip | 压缩类型,参见压缩 |
compression-level | 0..22 | 压缩级别,参见压缩 | |
force-compression | true ,false | false | 强制应用压缩,参见压缩 |
rewrite-timestamp | true ,false | false | 将文件时间戳重写为SOURCE_DATE_EPOCH 值。有关如何指定SOURCE_DATE_EPOCH 值,请参见构建可重复性。 |
oci-mediatypes | true ,false | false | 在导出器清单中使用OCI媒体类型,参见OCI媒体类型 |
unpack | true ,false | false | 创建后解压镜像(用于containerd) |
store | true ,false | true | 将生成的镜像存储到工作节点(例如,containerd)的镜像存储中,并确保镜像在内容存储中具有所有块。如果工作节点没有镜像存储(例如,使用OCI工作节点时),则忽略。 |
annotation.<key> | 字符串 | 使用相应的key 和value 附加注释到已构建的镜像,参见注释 |
注释
这些导出器支持使用annotation
参数添加OCI注释,然后使用点表示法使用注释名称。以下示例设置org.opencontainers.image.title
注释
$ docker buildx build \
--output "type=<type>,name=<registry>/<image>,annotation.org.opencontainers.image.title=<title>" .
有关注释的更多信息,请参阅BuildKit文档。
进一步阅读
有关image
或registry
导出器的更多信息,请参阅BuildKit自述文件。