构建发行说明
此页面包含有关新功能、改进和 bug 的信息 Docker Buildx 中的修复。
0.19.1
2024-11-27GitHub 上提供了此版本的完整发行说明。
Bug 修复
- 恢复了 v0.19.0 中的更改,为字段添加了新的对象表示法 以前在 Bake definition 中需要 CSV 字符串。此增强功能是 由于向后不兼容问题而回退 边缘情况。此功能现已推迟到 v0.20.0 版本。docker/buildx#2824
0.19.0
2024-11-27GitHub 上提供了此版本的完整发行说明。
新增功能
Bake 现在要求您在构建需要时允许文件系统授权 读取或写入当前工作目录之外的文件。docker/buildx#2796、docker/buildx#2812 的 docker/buildx#2812 中。
要允许文件系统授权,请使用
--allow fs.read=<path>
的标志 这docker buildx bake
命令。此功能目前仅在使用本地 Bake 时报告警告 定义,但从 v0.20 开始会开始产生错误 释放。要在当前版本中启用该错误,您可以设置
BUILDX_BAKE_ENTITLEMENTS_FS=1
.
增强
烘焙定义现在支持以前需要 CSV 字符串作为输入的字段的新对象表示法。docker/buildx#2758
注意
由于一个错误,此增强功能在 v0.19.1 中被恢复。
Bake definition 现在允许为变量定义验证条件。docker/buildx#2794
元数据文件值现在可以包含 JSON 数组值。docker/buildx#2777
改进了对标签使用不正确格式时的错误消息。docker/buildx#2778
FreeBSD 和 OpenBSD 工件现在包含在该版本中。docker/buildx#2774、docker/buildx#2775、docker/buildx#2781
Bug 修复
- 修复了打印包含空 Compose 网络的烘焙定义时出现的问题。docker/buildx#2790 的
包装
- Compose 支持已更新到 v2.4.4。docker/buildx#2806 docker/buildx#2780 的。
0.18.0
2024-10-31GitHub 上提供了此版本的完整发行说明。
新增功能
- 这
docker buildx inspect
命令现在显示使用 TOML 文件设置的 BuildKit 守护进程配置选项。docker/buildx#2684 - 这
docker buildx ls
现在,通过压缩 platform 列表,命令输出现在更加紧凑。新的--no-trunc
选项可用于完整列表。docker/buildx#2138、docker/buildx#2717 - 这
docker buildx prune
命令现在支持新的--max-used-space
和--min-free-space
使用 BuildKit v0.17.0+ 构建器的过滤器。docker/buildx#2766
增强
- 允许使用
pprof
使用BUILDX_CPU_PROFILE
和BUILDX_MEM_PROFILE
环境变量。docker/buildx#2746 - 标准输入的最大 Dockerfile 大小已增加。docker/buildx#2716、docker/buildx#2719
- 内存分配已减少。docker/buildx#2724、docker/buildx#2713
- 这
--list-targets
和--list-variables
的标志docker buildx bake
不再需要初始化 builder。docker/buildx#2763
Bug 修复
- 现在,检查警告会相对于当前工作目录打印有问题的 Dockerfile 的完整文件路径。docker/buildx#2672 的
- 的
--check
和--call
选项已更新以更正引用。docker/buildx#2705 - 修复了 Build details 链接在实验模式下不显示的问题。docker/buildx#2722
- 修复 Bake 的无效目标链接的验证问题。docker/buildx#2700
- 修复运行无效命令时缺少错误消息的问题。docker/buildx#2741 中
- 修复 中本地状态可能出现的虚假警告
--call
请求。docker/buildx#2754 的 - 修复在 Bake 中使用链接目标时的权利潜在问题。docker/buildx#2701
- 修复使用 Buildx 运行 Buildx 后访问本地状态时可能出现的权限问题
sudo
.docker/buildx#2745 中
包装
- Compose 兼容性已更新到 v2.4.1。docker/buildx#2760
0.17.1
2024-09-13GitHub 上提供了此版本的完整发行说明。
Bug 修复
- 不设置
network.host
创建 Builder 时自动显示权利标志 对于docker-container
和kubernetes
drivers (如果设置了权利) 在 BuildKit 配置文件中。docker/buildx#2685 的 - 请勿打印
network
字段替换为docker buildx bake --print
为空时。docker/buildx#2689 - 修复 WSL2 下的遥测套接字路径。docker/buildx#2698
0.17.0
2024-09-10GitHub 上提供了此版本的完整发行说明。
新增功能
- 加
basename
,dirname
和sanitize
函数进行烘焙。docker/buildx#2649 - 启用对 Bake entitlement 的支持,以允许在构建期间进行特权作。docker/buildx#2666 的
增强
- 引入 Bake 命令的 CLI 指标跟踪。docker/buildx#2610
- 加
--debug
添加到所有构建命令中。以前,它仅在顶级docker
和docker buildx
命令。docker/buildx#2660 - 允许多节点生成器从 stdin 进行构建。docker/buildx#2656
- 提高
kubernetes
driver 初始化。docker/buildx#2606 - 使用 Bake 构建多个目标时,在错误消息中包含目标名称。docker/buildx#2651
- 优化指标处理以减少进度跟踪期间的性能开销。docker/buildx#2641
- 显示完成规则检查后的警告数。docker/buildx#2647
- 跳过前端方法的 build ref 和 provenance 元数据。docker/buildx#2650
- 添加了对在 Bake 文件(HCL 和 JSON)中设置网络模式的支持。docker/buildx#2671
- 支持
--metadata-file
标志(当沿--call
旗。docker/buildx#2640 - 将共享会话用于多个 Bake 目标使用的本地上下文。docker/buildx#2615、docker/buildx#2607、docker/buildx#2663
Bug 修复
- 改进内存管理以避免不必要的分配。docker/buildx#2601
打包更新
- Compose 支持已更新到 v2.1.6。docker/buildx#2547
0.16.2
2024-07-25GitHub 上提供了此版本的完整发行说明。
Bug 修复
- 修复将本地缓存导出到 NFS 卷时可能出现的 “bad file descriptor” 错误 docker/buildx#2629
0.16.1
2024-07-18GitHub 上提供了此版本的完整发行说明。
Bug 修复
- 修复由于数据竞争而可能导致的 panic
buildx bake --print
命令 docker/buildx#2603 - 改进有关使用
--debug
flag 来检查构建警告 docker/buildx#2612
0.16.0
2024-07-11GitHub 上提供了此版本的完整发行说明。
新增功能
- Bake 命令现在支持
--call
和--check
flags 和call
用于选择自定义前端方法的 Target 定义中的属性。docker/buildx#2556、docker/buildx#2576 - 实验的Bake 现在支持
--list-targets
和--list-variables
用于检查项目的定义和可能的配置选项的标志。docker/buildx#2556 - 烘焙定义变量和目标支持新的
description
属性来定义基于文本的描述,可以使用例如--list-targets
和--list-variables
.docker/buildx#2556 - Bake 现在支持打印构建检查冲突的警告。docker/buildx#2501
增强
- build 命令现在可确保多节点构建对每个节点使用相同的构建引用。docker/buildx#2572
- 避免重复请求,提高远程驱动程序的性能。docker/buildx#2501
- 现在,可以通过将
BUILDX_METADATA_WARNINGS=1
环境变量。docker/buildx#2551、docker/buildx#2521、docker/buildx#2550 - 改进消息
--check
标志。docker/buildx#2549
Bug 修复
- 修复了构建过程中对多类型注释的支持。docker/buildx#2522
- 修复了在切换项目时由于增量传输重用而可能导致文件传输效率低下的回归问题。docker/buildx#2558
- 修复链接的 Bake 目标的默认加载不正确。docker/buildx#2583
- 修复不正确
COMPOSE_PROJECT_NAME
处理。docker/buildx#2579 - 修复对多节点构建的索引注释支持。docker/buildx#2546
- 修复了从远程上下文捕获构建的来源元数据的问题。docker/buildx#2560
打包更新
- Compose 支持已更新到 v2.1.3。docker/buildx#2547
0.15.1
2024-06-18GitHub 上提供了此版本的完整发行说明。
Bug 修复
- 修复某些验证请求的缺失构建错误和退出代码
--check
.docker/buildx#2518 - 更新 的回退镜像
--check
到 Dockerfile v1.8.1。docker/buildx#2538 的
0.15.0
2024-06-11GitHub 上提供了此版本的完整发行说明。
新增功能
新增功能
--call
option 允许为构建设置求值方法,替换之前的实验性--print
旗。docker/buildx#2498、docker/buildx#2487、docker/buildx#2513除了默认的
build
方法,以下方法由 Dockerfile 前端实现:--call=check
:为您的构建配置运行验证例程。有关生成检查的更多信息,请参阅生成检查--call=outline
:显示当前构建将使用的配置,包括您的构建将使用的所有构建参数、密钥、SSH 挂载等。--call=targets
:显示所有可用目标及其描述。
新增功能
--prefer-index
标志已添加到docker buildx imagetools create
命令来控制从一个单平台镜像清单创建镜像的行为。docker/buildx#2482 的这
kubernetes
司机现在支持timeout
用于配置部署超时的选项。docker/buildx#2492已为生成警告类型添加了新的指标定义。docker/buildx#2482、docker/buildx#2507
这
buildx prune
和buildx du
命令现在支持否定和前缀过滤器。docker/buildx#2473 的使用 Bake 构建 Compose 文件现在支持传递 SSH 转发配置。docker/buildx#2445
修复配置
kubernetes
具有自定义 TLS 证书的驱动程序。docker/buildx#2454 的修复加载节点时并发 kubeconfig 访问的问题。docker/buildx#2497
打包更新
- Compose 支持已更新到 v2.1.2。docker/buildx#2502、docker/buildx#2425
0.14.0
2024-04-18GitHub 上提供了此版本的完整发行说明。
增强
- 添加对
--print=lint
(实验性)。docker/buildx#2404、docker/buildx#2406 - 修复前端中打印子请求的自定义实现的 JSON 格式。docker/buildx#2374
- 现在,在 使用
--metadata-file
.docker/buildx#2280 - 添加对远程定义的 Git 身份验证支持。docker/buildx#2363
- 新增功能
default-load
driver 选项的docker-container
,remote
和kubernetes
驱动程序将构建结果加载到 Docker Engine 镜像存储中。docker/buildx#2259 - 加
requests.ephemeral-storage
,limits.ephemeral-storage
和schedulername
选项添加到kubernetes
司机.docker/buildx#2370、docker/buildx#2415 - 加
indexof
函数docker-bake.hcl
文件。docker/buildx#2384 - Buildx 的 OpenTelemetry 指标现在测量构建期间镜像源作的空闲时间、镜像导出、运行作和镜像传输的持续时间。docker/buildx#2316、docker/buildx#2317、docker/buildx#2323、docker/buildx#2271
- 将进度指标构建到与
desktop-linux
context 在实验模式下不再需要 Buildx(BUILDX_EXPERIMENTAL=1
).docker/buildx#2344
Bug 修复
- 修复
--load
和--push
与多个 Bake 文件定义一起使用时错误地覆盖输出。docker/buildx#2336 - 修复在启用实验模式的情况下从 stdin 构建的问题。docker/buildx#2394
- 修复了委托跟踪可能重复的问题。docker/buildx#2362
打包更新
- Compose 支持已更新到 v2.26.1(通过
compose-go
2.0.2 版).docker/buildx#2391
0.13.1
2024-03-13GitHub 上提供了此版本的完整发行说明。
Bug 修复
- 修复连接到
docker-container://
和kube-pod://
样式 URL。docker/buildx#2327 的 - 修复
--push
替换为 Bake 时,当目标已定义非镜像输出时。docker/buildx#2330
0.13.0
2024-03-06GitHub 上提供了此版本的完整发行说明。
新增功能
- 新增功能
docker buildx dial-stdio
命令直接联系配置的 builder 实例的 BuildKit 守护进程。docker/buildx#2112 - Windows 容器构建器现在可以使用
remote
driver 和 npipe 连接。docker/buildx#2287 - Windows 现在支持 Npipe URL 方案。docker/buildx#2250
- 实验的Buildx 现在可以导出构建持续时间和传输大小的 OpenTelemetry 指标。docker/buildx#2235, docker/buildx#2258 docker/buildx#2225 docker/buildx#2224 docker/buildx#2155
增强
- Bake 命令现在支持定义
shm-size
和ulimit
值。docker/buildx#2279、docker/buildx#2242 - 更好地处理使用远程驱动程序连接到运行状况不佳的节点。docker/buildx#2130
- 使用
docker-container
和kubernetes
驱动程序现在允许network.host
entitlement (允许访问容器的网络)。docker/buildx#2266 - 构建版本现在可以通过单个命令使用多个输出(需要 BuildKit v0.13+)。docker/buildx#2290、docker/buildx#2302
- 现在,可以通过配置的跟踪分支找到默认 Git 存储库路径。docker/buildx#2146
- 修复了在 Bake 中使用链接目标时可能出现的缓存失效问题。docker/buildx#2265
- 修复了 WSL 中的 Git 存储库路径清理。docker/buildx#2167
- 现在,可以使用单个命令删除多个生成器。docker/buildx#2140
- 通过 Unix 套接字进行新的取消信号处理。docker/buildx#2184 docker/buildx#2289
- Compose 规范支持已更新到 v2.0.0-rc.8。docker/buildx#2205
- 这
--config
的标志docker buildx create
已重命名为--buildkitd-config
.docker/buildx#2268 - 这
--metadata-file
的标志docker buildx build
现在还可以返回可用于进一步构建调试的构建引用,例如,在 Docker Desktop 中。docker/buildx#2263 - 这
docker buildx bake
Command 现在为所有目标共享相同的身份验证提供程序以提高性能。docker/buildx#2147 - 这
docker buildx imagetools inspect
命令现在显示 DSSE 签名的 SBOM 和出处证明。docker/buildx#2194 - 这
docker buildx ls
命令现在支持--format
用于控制输出的选项。docker/buildx#1787 的 - 这
docker-container
驱动程序现在支持用于定义 BuildKit 容器重启策略的驱动程序选项。docker/buildx#1271 - 从 Buildx 导出的 VCS 属性现在包括本地目录子路径,如果它们相对于当前 Git 仓库。docker/buildx#2156
--add-host
标志现在允许对 IPv6 地址使用分隔符。docker/buildx#2121=
Bug 修复
- 修复导出进度时的额外输出
--progress=rawjson
docker/buildx#2252 - 修复 Windows 上可能出现的控制台警告。docker/buildx#2238
- 修复在将 Bake 与多个配置一起使用时可能出现的不一致的配置合并顺序。docker/buildx#2237
- 修复
docker buildx imagetools create
命令。docker/buildx#2230
0.12.1
2024-01-12GitHub 上提供了此版本的完整发行说明。
错误修复和增强功能
- 修复某些
--driver-opt
值,这些值可能会导致存储 panic 和 corrupt 状态。docker/buildx#2176 的
0.12.0
2023-11-16GitHub 上提供了此版本的完整发行说明。
新增功能
- 新增功能
--annotation
flag 的buildx build
和annotations
键,允许您添加 OCI 注释来构建结果。#2020, #2098 - 新的实验性调试功能,包括新的
debug
命令和交互式调试控制台。 此功能当前需要设置BUILDX_EXPERIMENTAL=1
.#2006, #1896, #1970, #1914, #2026, #2086
错误修复和增强功能
- 特别的
host-gateway
IP 映射现在可以与--add-host
标志。#1894, #2083 - Bake 现在允许在从远程定义构建时添加本地源文件。#1838
- 将构建结果上传到 Docker 的状态现在以交互方式显示在进度条上。#1994
- 在引导多节点构建集群时,错误处理已得到改进。#1869
- 这
buildx imagetools create
命令现在允许在注册表中创建新镜像时添加注释。排名 #1965 - 现在,Docker 和 Remote 驱动程序可以从 buildx 进行 OpenTelemetry 构建跟踪委派。#2034
- Bake 命令现在在进度条上显示从中加载生成定义的所有文件。排名 #2076
- 烘焙文件现在允许在多个定义文件中定义相同的属性。#1062
- 现在,将 Bake 命令与远程定义一起使用允许此定义使用本地 Dockerfile。#2015
- Docker 容器驱动程序现在显式设置 BuildKit 配置路径,以确保从同一位置加载主线和无根镜像的配置。#2093
- 提升 BuildKit 实例何时完成启动的检测性能。#1934
- 容器驱动程序现在接受许多新的驱动程序选项,用于定义 BuildKit 容器的资源限制。排名 #2048
- 检查命令格式已得到改进。排名 #2068
- 有关驱动程序功能的错误消息已得到改进。排名 #1998
- 改进了在没有目标的情况下调用 Bake 命令时的错误。排名 #2100
- 允许在独立模式下运行时启用带有环境变量的调试日志。#1821
- 使用 Docker 驱动程序时,默认镜像解析模式已更新为首选本地 Docker 镜像以实现向后兼容性。#1886
- Kubernetes 驱动程序现在允许为 BuildKit 部署和 Pod 设置自定义注释和标签。#1938
- Kubernetes 驱动程序现在允许使用终端节点配置设置身份验证令牌。#1891
- 修复了 Bake 中链接目标可能出现的问题,该问题可能导致构建失败或多次上传目标的本地源。排名 #2113
- 修复了在使用 Bake 命令的 matrix 功能时访问全局目标属性时出现的问题。排名 #2106
- 修复某些 build 标志的格式验证问题 #2040
- 修复了一些问题,以避免在引导构建器节点时不必要地锁定某些命令。排名 #2066
- 修复了多个构建尝试并行引导同一构建器实例的情况。排名 #2000
- 修复了在某些情况下可以将构建结果上传到 Docker 的错误被删除的情况。#1927
- 修复基于构建输出的缺失证明支持的检测功能。#1988
- 修复了在 Bake remote definition 中加载的生成,使其不显示在生成历史记录中。#1961, #1954
- 修复了使用 Bake 定义配置文件的 构建 Compose 文件时出现的错误。#1903
- 修复进度条上可能出现的时间更正错误。#1968
- 修复了将自定义 cgroup parent 传递给使用新控制器接口的构建的问题。#1913
包装
0.11.2
2023-07-18GitHub 上提供了此版本的完整发行说明。
错误修复和增强功能
- 修复了导致 buildx 不读取
KUBECONFIG
路径。docker/buildx#1941 - 修复了结果句柄构建错误地显示在构建历史记录中的回归问题。docker/buildx#1954
0.11.1
2023-07-05GitHub 上提供了此版本的完整发行说明。
错误修复和增强功能
- 修复了 bake 的回归问题,其中不会加载配置文件中的服务。docker/buildx#1903
- 修复
--cgroup-parent
选项在构建过程中不起作用。docker/buildx#1913 - 修复了有效 docker 上下文可能无法通过 buildx 构建器名称的回归 验证。docker/buildx#1879
- 修复了在构建过程中调整终端大小时可能出现的 panic。docker/buildx#1929
0.11.0
2023-06-13GitHub 上提供了此版本的完整发行说明。
新增功能
- Bake 现在支持矩阵构建。
上的新 matrix 字段
target
允许您创建多个类似的目标 删除 Bake Files 中的重复项。docker/buildx#1690 - 新的实验性
--detach
标志,用于在 Detached 模式下运行构建。docker/buildx#1296、docker/buildx#1620、docker/buildx#1614、docker/buildx#1737、docker/buildx#1755 - 新的实验性调试监视器模式,可让您在构建中启动调试会话。docker/buildx#1626、docker/buildx#1640
- 新增功能
EXPERIMENTAL_BUILDKIT_SOURCE_POLICY
环境变量用于应用 BuildKit 源策略文件。docker/buildx#1628
错误修复和增强功能
--load
现在支持在 containerd 镜像 store 已启用。docker/buildx#1813- Build progress output (构建进度输出) 现在显示正在使用的生成器的名称。docker/buildx#1177 的命令
- Bake 现在支持检测
compose.{yml,yaml}
文件。docker/buildx#1752 - Bake 现在支持新的 Compose 构建键
dockerfile_inline
和additional_contexts
.docker/buildx#1784 - Bake 现在支持 replace HCL 功能。docker/buildx#1720 命令
- Bake 现在允许将多个类似的认证参数合并到一个 参数以允许使用单个全局值进行覆盖。docker/buildx#1699 的
- 对 shell 完成的初始支持。docker/buildx#1727
- BuildKit 版本现在可以正确显示在
buildx ls
和buildx inspect
对于使用docker
司机。docker/buildx#1552 - 在 buildx inspect 视图中显示其他构建器节点详细信息。docker/buildx#1440、docker/buildx#1854
- 使用
remote
驱动程序允许使用 TLS 而无需证明自己的 TLS key/cert (如果 BuildKit 远程配置为支持它) docker/buildx#1693 - 使用
kubernetes
驱动程序支持新的serviceaccount
选择 ,它将serviceAccountName
的 Kubernetes Pod 中。docker/buildx#1597 - 使用
kubernetes
driver 支持proxy-url
选项中的 kubeconfig 文件。docker/buildx#1780 - 使用
kubernetes
现在会自动分配节点名称,如果 未明确提供 name。docker/buildx#1673 的 - 修复为 编写证书时路径无效的问题
docker-container
驱动程序。docker/buildx#1831 - 修复了使用 SSH 访问远程烘焙文件时的烘焙失败问题。docker/buildx#1711、docker/buildx#1734
- 修复了远程烘焙上下文解析不正确时的烘焙失败问题。docker/buildx#1783 的
- 修复路径分辨率
BAKE_CMD_CONTEXT
和cwd://
PATHS 的 PATHS 进行烘焙上下文。docker/buildx#1840 - 修复使用创建镜像时混合的 OCI 和 Docker 媒体类型
buildx imagetools create
.docker/buildx#1797 - 修复
--iidfile
和-q
.docker/buildx#1844 - 修复了混合静态凭据和 IAM 配置文件时的 AWS 身份验证。docker/buildx#1816
0.10.4
2023-03-06注意
Buildx v0.10 支持最小 SLSA 出处证明,这需要支持符合 OCI 的多平台镜像。这可能会引入注册表和运行时支持的问题 (例如 Google Cloud Run 和 AWS Lambda)。 您可以选择禁用默认的出处证明功能 用
--provenance=false
.
错误修复和增强功能
- 加
BUILDX_NO_DEFAULT_ATTESTATIONS
作为--provenance false
.docker/buildx#1645 - 默认情况下,禁用脏 Git 签出检测以提高性能。可以使用
BUILDX_GIT_CHECK_DIRTY
选择加入。docker/buildx#1650 - 在发送到 BuildKit 之前,从 VCS 提示 URL 中删除凭据。docker/buildx#1664 的
0.10.3
2023-02-16注意
Buildx v0.10 支持最小 SLSA 出处证明,这需要支持符合 OCI 的多平台镜像。这可能会引入注册表和运行时支持的问题 (例如 Google Cloud Run 和 AWS Lambda)。 您可以选择禁用默认的出处证明功能 用
--provenance=false
.
错误修复和增强功能
- 修复了在收集 Git 来源信息时可访问的提交和警告。docker/buildx#1592、docker/buildx#1634
- 修复了未验证 docker 上下文的回归问题。docker/buildx#1596 的
- 使用 JSON 烘焙定义修复函数解析。docker/buildx#1605
- 修复了丢弃原始 HCL bake 诊断的情况。docker/buildx#1607
- 修复未使用 bake 和 compose 文件正确设置的标签。docker/buildx#1631
0.10.2
2023-01-30注意
Buildx v0.10 支持最小 SLSA 出处证明,这需要支持符合 OCI 的多平台镜像。这可能会引入注册表和运行时支持的问题 (例如 Google Cloud Run 和 AWS Lambda)。 您可以选择禁用默认的出处证明功能 用
--provenance=false
.
错误修复和增强功能
- 修复了在多节点构建中未考虑首选平台顺序的问题。docker/buildx#1561
- 修复处理时可能出现的 panic 问题
SOURCE_DATE_EPOCH
环境变量。docker/buildx#1564 - 修复自 BuildKit v0.11 起多节点清单合并时可能出现的推送错误 一些登记处。docker/buildx#1566 的
- 改进了有关收集 Git 来源信息的警告。docker/buildx#1568
0.10.1
2023-01-27注意
Buildx v0.10 支持最小 SLSA 出处证明,这需要支持符合 OCI 的多平台镜像。这可能会引入注册表和运行时支持的问题 (例如 Google Cloud Run 和 AWS Lambda)。 您可以选择禁用默认的出处证明功能 用
--provenance=false
.
错误修复和增强功能
- 修复将正确的源 URL 发送为
vsc:source
元数据。docker/buildx#1548 - 修复 data-race 可能引起的 panic。docker/buildx#1504
- 修复回归
rm --all-inactive
.docker/buildx#1547 - 改进
imagetools inspect
通过延迟加载数据。docker/buildx#1546 - 正确地将功能请求标记为 internal。docker/buildx#1538
- 检测无效的证明配置。docker/buildx#1545 的
- 更新 containerd 补丁以修复可能影响推送回归的问题
imagetools
命令。docker/buildx#1559
0.10.0
2023-01-10注意
Buildx v0.10 支持最小 SLSA 出处证明,这需要支持符合 OCI 的多平台镜像。这可能会引入注册表和运行时支持的问题 (例如 Google Cloud Run 和 AWS Lambda)。 您可以选择禁用默认的出处证明功能 用
--provenance=false
.
新增功能
- 这
buildx build
命令支持新的--attest
flag 以及 简写--sbom
和--provenance
,用于为您的 当前版本。docker/buildx#1412 docker/buildx#1475 - 当使用支持出处证明的 BuildKit 进行构建时,Buildx 将
自动共享 build 上下文的版本控制信息,因此
它可以显示在 Provenance 中以供以后调试。以前,这只
发生在直接从 Git URL 构建时。选择退出此行为
您可以设置
BUILDX_GIT_INFO=0
.(可选)您还可以自动定义 标签,通过BUILDX_GIT_LABELS=1
.docker/buildx#1462、docker/buildx#1297、docker/buildx#1341、docker/buildx#1468、docker/buildx#1477 - 具有
--build-context
现在支持oci-layout://
协议 用于使用本地 OCI 布局目录的值初始化上下文。 例如--build-context stagename=oci-layout://path/to/dir
.此功能 需要 BuildKit v0.11.0+ 和 Dockerfile 1.5.0+。docker/buildx#1456 的 - Bake 现在支持资源插值,您可以在其中重用其他目标定义中的值。docker/buildx#1434 的
- Buildx 现在会自动转发
SOURCE_DATE_EPOCH
环境变量 如果它是在您的环境中定义的。此功能旨在与 更新了 BuildKit v0.11.0+ 中的可重现构建支持。docker/buildx#1482 - Buildx 现在记住构建器的最后一个活动,以便更好地组织 的生成器实例。docker/buildx的 #1439
- 烘焙定义现在支持变量的 null 值和构建参数的标签,以及使用 Dockerfile 中设置的标签的标签。docker/buildx#1449 的
- 这
buildx imagetools inspect
命令现在支持显示 SBOM 和 Provenance 数据。docker/buildx#1444、docker/buildx#1498 - 提高性能
ls
命令和检查流。docker/buildx#1430、docker/buildx#1454、docker/buildx#1455、docker/buildx#1345 - 现在支持使用 Docker 驱动程序添加额外的主机
特定于 Docker
host-gateway
特殊值。docker/buildx#1446 的 - OCI 导出程序现在支持
tar=false
选项 直接在目录中导出 OCI 格式。docker/buildx#1420
升级
- 将 Compose 规范更新为 1.6.0。docker/buildx#1387 的
错误修复和增强功能
--invoke
现在可以从镜像元数据加载默认启动环境。docker/buildx#1324- 修复与 UserNS 相关的容器驱动程序行为。docker/buildx#1368 的
- 修复使用错误变量值类型时 Bake 中可能出现的 panic。docker/buildx#1442 的
- 修复 中可能出现的 panic
imagetools inspect
.docker/buildx#1441 docker/buildx#1406 - 修复发送空
--add-host
值设置为 BuildKit。docker/buildx#1457 的 - 修复了对进度组的进度前缀的处理。docker/buildx#1305
- 修复 Bake 中的递归解析组。docker/buildx#1313
- 修复多节点生成器清单上可能出现的错误缩进。docker/buildx#1396 的
- 修复因缺少 OpenTelemetry 配置而可能导致的 panic。docker/buildx#1383 的
- 修复
--progress=tty
当 TTY 不可用时的行为。docker/buildx#1371 - 修复 中的连接错误情况
prune
和du
命令。docker/buildx#1307
0.9.1
2022-08-18错误修复和增强功能
- 这
inspect
命令现在显示正在使用的 BuildKit 版本。docker/buildx#1279 - 修复了在构建包含没有 build 块。docker/buildx#1277
有关更多详细信息,请参阅 Buildx GitHub 存储库中的完整发行说明。
0.9.0
2022-08-17新增功能
- 支持新的
remote
司机,您可以使用 以连接到任何已在运行的 BuildKit 实例。docker/buildx#1078, docker/buildx#1093, docker/buildx#1094, docker/buildx#1103, docker/buildx#1134, docker/buildx#1204 - 现在,即使构建上下文为 来自外部 Git 或 HTTP URL。docker/buildx#994
- 生成命令现在支持新的生成上下文类型
oci-layout://
用于从本地 OCI 布局目录加载构建上下文。 请注意,此功能依赖于未发布的 BuildKit 功能和构建器 instance frommoby/buildkit:master
需要一直使用 BuildKit v0.11 释放。docker/buildx#1173 的 - 您现在可以使用新的
--print
标志来运行 BuildKit 前端执行构建并打印其结果。您可以使用 此功能,用于显示 当前版本支持使用--print=outline
并列出所有可用 Dockerfile 阶段与--print=targets
.此功能是针对 收集早期反馈并需要启用BUILDX_EXPERIMENTAL=1
环境变量。我们计划在未来更新/扩展此功能 而不保持向后兼容性。docker/buildx#1100、docker/buildx#1272 - 您现在可以使用新的
--invoke
标志以启动交互式容器 交互式调试周期的生成结果。您可以重新加载这些 容器,或将其从 特殊监视器模式。此功能是早期收集的实验性功能 feedback 并需要启用BUILDX_EXPERIMENTAL=1
环境变量。 我们计划在未来更新/扩展此功能,而无需向后启用 兼容性。docker/buildx#1168、docker/buildx#1257、docker/buildx#1259 - Buildx 现在能理解环境变量
BUILDKIT_COLORS
和NO_COLOR
自定义/禁用交互式 Build ProgressBar 的颜色。docker/buildx#1230、docker/buildx#1226 buildx ls
命令现在显示每个构建器的当前 BuildKit 版本 实例。docker/buildx#998- 这
bake
命令现在加载.env
文件 文件以实现兼容性。docker/buildx#1261 - Bake 现在支持使用
cache_to
定义。docker/buildx#1155 的 - Bake 现在支持新的内置函数
timestamp()
以访问当前时间。docker/buildx#1214 - Bake 现在支持 Compose 构建密钥定义。docker/buildx#1069 命令
- 现在,Compose 文件支持其他构建上下文配置,方法是
x-bake
.docker/buildx#1256 - Inspecting Builder 现在显示当前驱动程序选项配置。docker/buildx#1003、docker/buildx#1066
更新
- 将 Compose 规范更新为 1.4.0。docker/buildx#1246、docker/buildx#1251
错误修复和增强功能
- 这
buildx ls
更新了命令输出,可以更好地访问错误 来自不同的建造者。docker/buildx#1109 - 这
buildx create
命令现在对生成器参数执行其他验证 以避免创建配置无效的 Builder 实例。docker/buildx#1206 - 这
buildx imagetools create
Command 现在可以创建新的多平台镜像 即使源子镜像位于不同的存储库中,或者 登记处。docker/buildx#1137 的命令 - 您现在可以设置在创建
构建器实例而不传递自定义
--config
价值。docker/buildx#1111 的 - Docker 驱动程序现在可以检测
dockerd
实例最初支持 禁用了 Buildkit 功能,如多平台镜像。docker/buildx#1260、docker/buildx#1262 - 使用目标编写文件
.
现在转换为 use,因此选择器键仍可在此类目标中使用。docker/buildx#1011_
- 包括用于检查有效驱动程序配置的附加验证。docker/buildx#1188、docker/buildx#1273
- 这
remove
命令现在会显示已删除的生成器并禁止删除 上下文构建器。docker/buildx#1128 的版本 - 使用 Kubernetes 驱动程序时启用 Azure 身份验证。docker/buildx#974
- 为 kubernetes 驱动程序添加容忍度处理。docker/buildx#1045 docker/buildx#1053
- 将已弃用的 seccomp 注释替换为
securityContext
在kubernetes
司机。docker/buildx#1052 - 修复使用 nil platform 处理清单时出现的 panic。docker/buildx#1144 的
- 修复了 duration 过滤器与
prune
命令。docker/buildx#1252 - 修复了在 Bake 定义上合并多个 JSON 文件的问题。docker/buildx#1025
- 修复从 Docker 上下文创建的隐式生成器无效的问题 配置或断开连接。docker/buildx#1129
- 修复了在使用命名上下文时显示 no-output 警告的条件。docker/buildx#968
- 修复了当生成器实例和 docker 上下文具有 同名。docker/buildx#1131
- 修复打印不必要的 SSH 警告日志。docker/buildx#1085
- 修复在使用 Bake JSON 使用空变量块时可能出现的 panic 定义。docker/buildx#1080
- 修复镜像工具命令无法处理的问题
--builder
flag 正确。docker/buildx#1067 - 修复将自定义镜像与无根选项一起使用的问题。docker/buildx#1063
有关更多详细信息,请参阅 Buildx GitHub 存储库中的完整发行说明。
0.8.2
2022-04-04更新
- 更新 Compose 规范
buildx bake
到 v1.2.1 以修复解析端口定义。docker/buildx#1033
错误修复和增强功能
- 修复了在处理 BuildKit v0.10 中的进度流时可能发生的崩溃。docker/buildx#1042
- 修复 中的解析组
buildx bake
当已由父组加载时。docker/buildx#1021
有关更多详细信息,请参阅 Buildx GitHub 存储库中的完整发行说明。
0.8.1
2022-03-21错误修复和增强功能
- 修复了在处理构建上下文扫描错误时可能出现的 panic。docker/buildx#1005
- 允许
.
在 Compose target names 中buildx bake
以实现向后兼容性。docker/buildx#1018
有关更多详细信息,请参阅 Buildx GitHub 存储库中的完整发行说明。
0.8.0
2022-03-09新增功能
- Build 命令现在接受
--build-context
标志为您的构建定义其他命名的构建上下文。docker/buildx#904 - 烘焙定义现在支持定义目标之间的依赖关系,并在另一个构建中使用一个目标的结果。docker/buildx#928, docker/buildx#965, docker/buildx#963, docker/buildx#962, docker/buildx#981
imagetools inspect
现在接受--format
允许访问 config 的标志 和 buildinfo 获取特定镜像。docker/buildx#854、docker/buildx#972- 新标志
--no-cache-filter
允许配置 build,因此它会忽略缓存 仅适用于指定的 Dockerfile 阶段。docker/buildx#860 的 - 构建现在可以显示构建前端设置的警告摘要。docker/buildx的 #892
- 新的 build 参数
BUILDKIT_INLINE_BUILDINFO_ATTRS
允许选择加入嵌入 building 属性添加到生成的镜像中。docker/buildx#908 - 新标志
--keep-buildkitd
允许在删除构建器时保持 BuildKit 守护进程运行
错误修复和增强功能
--metadata-file
输出现在支持嵌入式结构类型。docker/buildx#946 的buildx rm
现在接受新标志--all-inactive
用于删除所有生成器 当前未运行。docker/buildx#885- 代理配置现在可以从 Docker 配置文件中读取并与 build 一起发送 请求向后兼容性。docker/buildx#959
- 在 Compose 中支持主机联网。docker/buildx#905、docker/buildx#880
- 现在可以使用
-f -
.docker/buildx#864 的 --iidfile
现在始终独立于 驱动程序(使用--metadata-file
for digest)。docker/buildx#980- Bake 中的目标名称现在被限制为不使用特殊字符。docker/buildx#929
- 使用
docker
司机。docker/buildx#989 - 修复 Compose 文件中的环境文件处理问题。docker/buildx#905
- 显示上次访问时间
du
命令。docker/buildx的 #867 - 修复多个 Bake 目标运行同一构建时可能出现的双重输出日志 步骤。docker/buildx#977
- 修复多节点构建器构建多个目标时可能出现的错误 混合平台。docker/buildx#985
- 修复 Bake 中的一些嵌套继承情况。docker/buildx#914
- 修复了在 Bake files 上打印默认组的问题。docker/buildx的 #884
- 修复
UsernsMode
使用无根容器时。docker/buildx的 #887
有关更多详细信息,请参阅 Buildx GitHub 存储库中的完整发行说明。
0.7.1
2021-08-25修复
- 修复 中匹配排除规则的问题
.dockerignore
.docker/buildx#858 - 修复
bake --print
当前组的 JSON 输出。docker/buildx#857 命令
有关更多详细信息,请参阅 Buildx GitHub 存储库中的完整发行说明。
0.7.0
2021-11-10新功能
- 来自 BuildKit 配置的 TLS 证书现在已传输到 build
容器
docker-container
和kubernetes
司机。docker/buildx#787 - 构建支持
--ulimit
标志。docker/buildx#800 - 构建支持
--shm-size
标志。docker/buildx#790 - 构建支持
--quiet
用于特征奇偶校验。docker/buildx#740 - 构建支持
--cgroup-parent
标志。docker/buildx#814 命令 - Bake 支持内置变量
BAKE_LOCAL_PLATFORM
.docker/buildx#748 - 烘焙支撑
x-bake
extension 字段。docker/buildx#721 kubernetes
驱动程序现在支持冒号分隔KUBECONFIG
.docker/buildx#761kubernetes
驱动现在支持使用--config
.docker/buildx#682 的kubernetes
driver 现在支持使用 driver-opt 安装 QEMU 仿真器。docker/buildx#682 的
增强
- 允许使用自定义注册表配置从 客户。docker/buildx的 #825
- 允许对 使用自定义注册表配置
buildx imagetools
命令。docker/buildx的 #825 - 允许在使用 创建 后引导构建器
buildx create --bootstrap
.docker/buildx#692 - 允许
registry:insecure
output 选项。docker/buildx的 #825 - BuildKit 配置和 TLS 文件现在保存在 Buildx state 目录中,并且 如果需要重新创建 BuildKit 实例,则重复使用。docker/buildx#824 的命令
- 确保不同的项目使用单独的目标目录 增量上下文传输以获得更好的性能。docker/buildx#817 的
- 现在,默认情况下,构建容器放置在单独的 cgroup 上。docker/buildx#782 的
- 现在,Bake 打印默认组时
--print
.docker/buildx#720 的 docker
驱动程序现在通过 HTTP 拨号构建会话以获得更好的性能。docker/buildx#804
修复
- 修复使用
--iidfile
以及多节点推送。docker/buildx#826 的版本 - 用
--push
不会清除文件中的其他镜像导出选项。docker/buildx#773 的 - 修复 的 Git URL 检测
buildx bake
什么时候https
协议。docker/buildx#822 - 修复了在多节点构建中推送具有多个名称的镜像的问题。docker/buildx#815
- 避免显示
--builder
flags 表示不使用它的命令。docker/buildx#818 - 不支持的 build 标志现在会显示警告。docker/buildx#810 命令
- 修复某些 OpenTelemetry 跟踪记录中的报告错误详细信息。docker/buildx#812 命令
有关更多详细信息,请参阅 Buildx GitHub 存储库中的完整发行说明。
0.6.3
2021-08-30修复
- 修复 Windows 客户端的 BuildKit 状态卷位置。docker/buildx#751
有关更多详细信息,请参阅 Buildx GitHub 存储库中的完整发行说明。
0.6.2
2021-08-21有关更多详细信息,请参阅 Buildx GitHub 存储库中的完整发行说明。
修复
- 修复某些 SSH 配置中出现的连接错误。docker/buildx#741
0.6.1
2021-07-30增强
- 设置
ConfigFile
以使用 Bake 解析编写文件。docker/buildx#704
修复
- 复制进度环境 var. docker/buildx#693
- 应忽略 nil 客户端。docker/buildx#686 的
有关更多详细信息,请参阅 Buildx GitHub 存储库中的完整发行说明。
0.6.0
2021-07-16新功能
- 支持 OpenTelemetry 跟踪并将 Buildx 客户端跟踪转发到 BuildKit 的 BuildKit 中。docker/buildx#635 的
- 实验性 GitHub Actions 远程缓存后端
--cache-to type=gha
和--cache-from type=gha
.docker/buildx#535 命令 - 新增功能
--metadata-file
标志已添加到 build 和 Bake 命令中,该 允许以 JSON 格式保存构建结果元数据。docker/buildx#605 - 这是支持 Windows ARM64 的第一个版本。docker/buildx#654
- 这是支持 Linux Risc-V 的第一个版本。docker/buildx#652 的
- Bake 现在支持使用本地文件或 另一个远程源作为上下文。docker/buildx的 #671
- Bake 现在允许变量相互引用并使用用户函数 in 变量,反之亦然。docker/buildx#575、docker/buildx#539、docker/buildx#532
- Bake 允许在全局范围内定义属性。docker/buildx#541
- Bake 允许跨多个文件的变量。docker/buildx#538 的
- 进度打印机中添加了新的静音模式。docker/buildx#558
kubernetes
驱动程序现在支持定义资源/限制。docker/buildx#618- 现在可以通过 buildx-bin Docker 镜像访问 Buildx Binaries。docker/buildx#656 的
增强
docker-container
驱动程序现在将 BuildKit 状态保持在卷中。使 更新与保持状态。docker/buildx#672 的- Compose 解析器现在基于新的 compose-go 解析器修复,支持一些较新的语法。docker/buildx的 #669
- 现在,在构建基于 ssh 的 git URL 时,会自动转发 SSH 套接字。docker/buildx#581 的
- Bake HCL 解析器已重写。docker/buildx#645 的
- 使用更多功能扩展 HCL 支持。docker/buildx#491 docker/buildx#503
- 允许来自环境变量的密钥。docker/buildx#488 的
- 具有不受支持的多平台和加载配置的构建现在会快速失败。docker/buildx#582 的
- 存储 Kubernetes 配置文件以使 buildx builder 可切换。docker/buildx#497
- Kubernetes 现在将所有 Pod 列为检查时的节点。docker/buildx#477 的命令
- 默认无根镜像已设置为
moby/buildkit:buildx-stable-1-rootless
.docker/buildx#480
修复
imagetools create
命令现在可以正确地将 JSON 描述符与旧描述符合并。docker/buildx#592- 修复构建
--network=none
不需要额外的安全权利。docker/buildx#531
有关更多详细信息,请参阅 Buildx GitHub 存储库中的完整发行说明。
0.5.1
2020-12-15修复
- 修复设置回归
--platform
upperbuildx create
外面kubernetes
司机。docker/buildx#475 的
有关更多详细信息,请参阅 Buildx GitHub 存储库中的完整发行说明。
0.5.0
2020-12-15新功能
- 这
docker
驱动程序现在支持--push
旗。docker/buildx#442 的 - Bake 支持内联 Dockerfile。docker/buildx的 #398
- Bake 支持从远程 URL 和 Git 存储库进行构建。docker/buildx的 #398
BUILDX_CONFIG
env var 允许用户将 buildX state 与 Docker 配置。docker/buildx#385BUILDKIT_MULTI_PLATFORM
Build ARG 允许强制构建多平台 返回对象,即使只有一个--platform
指定。docker/buildx#467
增强
- 允许
--append
搭配使用kubernetes
司机。docker/buildx#370 - 构建错误显示源文件和系统堆栈跟踪中的错误位置
跟
--debug
.docker/buildx#389 命令 - 使用源定义的烘焙格式 HCL 错误。docker/buildx#391
- Bake 允许数组中的空字符串值将被丢弃。docker/buildx#428
- 您现在可以将 Kubernetes 集群配置与
kubernetes
司机。docker/buildx#368 docker/buildx#460 - 创建用于拉取镜像的临时令牌,而不是共享凭证 如果可能的话。docker/buildx#469 的命令
- 确保在拉取 BuildKit 容器镜像时传递凭证。docker/buildx#441 docker/buildx#433
- 在 中禁用用户命名空间重新映射
docker-container
司机。docker/buildx#462 的 - 允许
--builder
标志切换到默认实例。docker/buildx#425 的 - 避免空时发出警告
BUILDX_NO_DEFAULT_LOAD
config 值。docker/buildx#390 的 - 替换错误生成的
quiet
选项。docker/buildx#403 的 - CI 已切换到 GitHub Actions。docker/buildx#451, docker/buildx#463, docker/buildx#466, docker/buildx#468, docker/buildx#471
修复
- 将小写 Dockerfile name 作为后备处理以实现向后兼容性。docker/buildx#444 的
有关更多详细信息,请参阅 Buildx GitHub 存储库中的完整发行说明。
0.4.2
2020-08-22新功能
- 支持
cacheonly
出口商。docker/buildx#337 的
增强
- 更新
go-cty
拉入更多stdlib
功能。docker/buildx#277 的 - 改进加载时的错误检查。docker/buildx#281
修复
- 修复使用 HCL 解析 json 配置的问题。docker/buildx#280
- 确保
--builder
是从 root 选项连接的。docker/buildx#321 - 删除多平台 iidfile 的警告。docker/buildx#351
有关更多详细信息,请参阅 Buildx GitHub 存储库中的完整发行说明。
0.4.1
2020-05-01修复
- 修复标志解析的回归问题。docker/buildx#268 的
- 修复了在 HCL 目标中使用 pull 和 no-cache key 的问题。docker/buildx#268 的
有关更多详细信息,请参阅 Buildx GitHub 存储库中的完整发行说明。
0.4.0
2020-04-30新功能
- 加
kubernetes
司机。docker/buildx#167 的 - 新全局
--builder
标志覆盖单个命令的生成器实例。docker/buildx#246 - 新增功能
prune
和du
用于管理本地生成器缓存的命令。docker/buildx#249 - 您现在可以将新的
pull
和no-cache
选项。docker/buildx#165 的命令
增强
- 将 Bake 升级到 HCL2,并支持变量和函数。docker/buildx#192
- Bake 现在支持
--load
和--push
.docker/buildx#164 的 - Bake 现在支持多个目标的通配符覆盖。docker/buildx#164 的
- 容器驱动程序允许通过以下方式设置环境变量
driver-opt
.docker/buildx#170 的
有关更多详细信息,请参阅 Buildx GitHub 存储库中的完整发行说明。
0.3.1
2019-09-27增强
- 处理复制 unix 套接字而不是错误。docker/buildx#155 moby/buildkit#1144
修复
- 现在,使用多个 Compose 文件运行 Bake 可以正确合并目标。docker/buildx#134 的
- 修复从 stdin 构建 Dockerfile 时的错误 (
build -f -
).docker/buildx#153 的
有关更多详细信息,请参阅 Buildx GitHub 存储库中的完整发行说明。
0.3.0
2019-08-02新功能
- 习惯
buildkitd
daemon 标志。docker/buildx#102 - 驱动程序特定选项
create
.docker/buildx#122 的
增强
- 环境变量用于 Compose 文件。docker/buildx#117 的命令
- Bake now 荣誉
--no-cache
和--pull
.docker/buildx#118 - 自定义 BuildKit 配置文件。docker/buildx#121 的
- 权利支持
build --allow
.docker/buildx#104
修复
- 修复 bug
--build-arg foo
不会读取foo
从环境。docker/buildx#116 的
有关更多详细信息,请参阅 Buildx GitHub 存储库中的完整发行说明。
0.2.2
2019-05-30增强
- 更改 Compose 文件处理以要求有效的服务规范。docker/buildx#87
有关更多详细信息,请参阅 Buildx GitHub 存储库中的完整发行说明。
0.2.1
2019-05-25新功能
- 加
BUILDKIT_PROGRESS
env var. docker/buildx#69 - 加
local
平台。docker/buildx#70
增强
- 如果在配置中定义了 arm 变体,则保留 arm 变体。docker/buildx#68
- 使 dockerfile 相对于上下文。docker/buildx#83
修复
- 修复了 compose 文件中的解析目标。docker/buildx#53
有关更多详细信息,请参阅 Buildx GitHub 存储库中的完整发行说明。
0.2.0
2019-04-25新功能
- 首次发布
有关更多详细信息,请参阅 Buildx GitHub 存储库中的完整发行说明。