问题标签 [buildx]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
129 浏览

docker - 为什么 docker buildx build 命令挂起?

我正在运行命令 docker buildx build --push --platform linux/amd64,linux/arm64 -t steinko/gradle-ci-cd 。o/gradle-ci-cd 。命令挂了

我的 Docker 文件看起来像这样

我的 Gradle 文件看起来像这样

我该如何解决悬挂问题?

0 投票
1 回答
1381 浏览

docker - Kaniko 和 BuildKit/Buildx 有什么区别?

据我了解:

  • 它们都是构建容器镜像的工具
  • 构建本身在容器中运行
  • 构建可以在远程节点上进行,例如在 Kubernetes 集群(KanikoBuildKit)中
  • 它们都提供高级功能,例如层缓存

我可以收集的差异:

  • 安全模型(Kaniko
  • BuildKit 利用了最新的发展,例如缓存清单和清单列表
  • BuildKit 支持多种架构

我不清楚的是两组工具之间的重叠程度以及何时应该使用其中一个而不是另一个。例如,这两种工具似乎都很好地涵盖了在 Kubernetes 集群上自行托管远程映像构建场的用例。

0 投票
1 回答
56 浏览

docker - 将 Docker/buildx 连接到 Kubernetes 集群中预先存在的构建器

所以我知道如何buildx在 Kubernetes 集群中创建一个新的构建器,然后再buildx从外部开始构建:

但是我也可以指示buildx连接独立创建的相应构建器吗?我一直在寻找 Docker/buildx可能存储相关信息的配置文件,但还没有找到。我已经用 Docker 20.10.1 试过了。

0 投票
1 回答
58 浏览

kubernetes - 与 Kubernetes 驱动程序一起使用时,buildx 如何命名其 pod

我试图了解当前出现的一个问题buildx,它的 Kubernetes 驱动程序、GitLab CI/CD 和并行作业。0生成器实例的 pod 名称中出现的后缀是什么?

它看起来像一个索引,但似乎与副本无关。例如我试过这个(注意第一个连字符0后面test和之前的后缀):

0 投票
1 回答
112 浏览

docker - 您可以将来自 docker 的单独构建组合起来吗?

我正在使用 circleci 部署应用程序,我部署到 amd 和 arm 架构,所以我的构建是多架构的,我一直在使用 docker buildx。借助 circleci 的新手臂支持,我能够将这个过程的时间从使用 quemu 的 3 小时缩短到大约 20 分钟,方法是在各自的构建环境中分别构建(在目标上构建时无需使用 quemu拱)。我遇到的是,当我运行 buildx 命令时,一个构建将完成,将其结果推送到存储库,然后另一个完成并覆盖以前的构建。我想要实现的是将构建的图像组合到一个清单中,以将它们组合在一起,就像我同时构建它们一样。有没有办法在不直接修改清单文件的情况下实现我的尝试?实现这一点所需的命令示例将非常有帮助!

提前致谢!

0 投票
0 回答
151 浏览

amazon-web-services - AWS ECR 生命周期策略未执行但在测试中有效

我设置图像生命周期策略以删除未标记的图像和具有特定前缀的图像

我点击了“测试规则”,dryRun 正确显示了所有受影响的图像。但即使我等了几天,它实际上也没有删除任何未标记的图像。可能是什么原因?为什么它在“测试”中起作用,但对存储库本身不起作用?

未标记的图像由docker buildx多个架构创建。就像 buildx 推送后的剩菜一样。

0 投票
0 回答
472 浏览

docker-compose - 使用 docker-compose 时如何增加 BUILDKIT_STEP_LOG_MAX_SIZE?

使用 docker-compose 构建项目时,过了一会儿我得到了

https://github.com/docker/buildx/issues/484#issuecomment-812997137,我了解到BUILDKIT_STEP_LOG_MAX_SIZE在创建 buildx 构建器时可以更改日志大小限制,但我该如何设置呢docker-compose.yml?在 args 或环境中设置它似乎不起作用。

我知道我可以禁用 BuildKit 作为解决方法:COMPOSE_DOCKER_CLI_BUILD=0 DOCKER_BUILDKIT=0 docker-compose build

0 投票
1 回答
655 浏览

docker - 如何将多架构 docker 镜像复制到不同的容器注册表?

有一种众所周知的方法可以将 docker 镜像从一个容器注册表复制到另一个。如果原始注册表是 dockerhub,典型的工作流程是这样的:

现在,在处理具有多架构层的图像时,您是如何进行上述操作的?

根据此链接中的信息,您可以依赖buildx构建多架构图像,并且在这样做的同时,您还可以将它们上传到您希望的任何存储库,但是我如何在不必先构建图像的情况下做到这一点?

看起来buildxcli 不必要地(?)将上传过程与构建过程耦合在一起。有什么建议么?

谢谢!

0 投票
1 回答
205 浏览

docker - ARM 架构的 Dockerfile 父级

我想为 AMD 和 ARM Graviton2 处理器构建 Docker 映像。我已经知道多架构 CLI 命令docker buildx build --platform linux/amd64,linux/arm64、清单以及 Docker 将提取正确的图像变体匹配架构的事实。

我想知道我是否必须在我的 Dockerfile for ARM 中作为父级arm64v8/ubuntu:20.04使用,或者两者都可以使用ubuntu:20.04?它会在两种架构上以相同的方式工作吗?这个官方arm64v8 dockerhub repo 的目的是什么?

构建时间存在显着差异 - 5 分钟与FROM ubuntu:20.0430 分钟FROM arm64v8/ubuntu:20.04

0 投票
0 回答
44 浏览

docker - 构建多架构 Docker 映像时强制架构

似乎 Docker(可能是 qemu)在某些情况下会退回到本机执行,即使架构不相同。例如,qemu 在 x64 上运行时似乎不模拟 x86。例如,当平台设置为 linux/386 时,这会导致我在构建 Docker 多架构映像时出现问题,因为 uname 返回 x86_64。当平台设置为 armv7 并且我在 arm64 上运行时,可能会发生同样的情况。

假设这是正确的:是否可以强制 Docker(或 qemu)模拟确切的拱门?我需要 uname 来返回确切的拱门,否则某些构建过程可能会失败。是否可以禁用此行为(如果暂时更好)?