如何检查默认的 BuildKit 版本?

6

背景

我想检查我的当前使用BuildKit的Docker设置是否包含这个提交

问题

当我使用Docker构建镜像时,如何找出Docker使用的BuildKit版本?

DOCKER_BUILDKIT=1 docker build
2个回答

9
更新:如@N1ngu所评论的,如果您在最新版本(≥22)上执行这些步骤,请检查vendor.mod而不是vendor.conf
我认为它并不会。我的Docker版本相当新(20.10.12),并且具有早于该版本的构建工具版本。以下是我尝试检查的方式:
  1. 获取当前docker版本的提交ID:
$docker --version
Docker version 20.10.12, build e91ed5707e
  1. 找到GitHub上的提交(或者本地克隆仓库后查看)

  2. 检查该版本的vendor.conf文件中为buildkit指定的提交:

github.com/moby/buildkit                            8142d66b5ebde79846b869fba30d9d30633e74aa # v0.8.1
  1. 比较构建工具库的这些提交记录。在此页面上,您可以看到Docker 20.10.12捆绑的版本8142d66在aa46719之前。如果相反,比较工具将把该分支视为最新状态,就像您反转URL中的提交记录时发生的那样。

2
根据 https://github.com/docker/cli/commit/7e560ae76fd07908fa4c64fb70dc6a0d2162be20 的结果,应检查 vendor.mod 而不是 vendor.conf - N1ngu
谢谢!我会在顶部添加那个注释。 - Leonardo Dagnino

1
一个更简单的方法来查看Docker上运行的BuildKit版本是运行以下命令:
$ docker buildx ls    
NAME/NODE   DRIVER/ENDPOINT STATUS  BUILDKIT             PLATFORMS
  default   default         running v0.11.7+d3e6c1360f6e linux/amd64, linux/amd64/v2, linux/amd64/v3, linux/386

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接