问题标签 [kaniko]

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 回答
24 浏览

jenkins - 在 Jenkins Kubernetes Pipeline 中创建然后使用容器的模式

我是 Jenkins 的长期用户,但对 Kubernetes 有点陌生,并在这里寻求专家的一些指导。基本上,我有许多项目需要三步构建:

  1. 运行一些流程以生成定制的 Containerfile。
  2. 将该 Containerfile 转换为图像(buildah、kaniko、img 等)。
  3. 为该图像创建一个新的“工作”容器,输入它,然后做一些事情。

刚开始,Kubernetes pods 是不可变的,所以工作容器不能在以后添加,但如果它的镜像没有,它也不能与初始容器同时创建。还存在。因此,要使其正常工作,它需要一个多 pod 构建。这似乎可行的,但可能更适用于并行而不是顺序运行多个进程的情况 [ 1 ]。

第二种可能的方法是将工作容器作为 Kaniko 映像启动,然后使用 Kaniko 执行程序“就地”构建它,然后在步骤 3 中输入它。

最后,我可以将其拆分为两个 Jenkins 作业——让第一个准备容器,然后使用参数化触发器让第二个获取并运行它。

我认为我可以使这些方法中的任何一种都起作用,但我不想在这方面与系统抗争——什么是最能使我与良好实践和这些工具的设计意图保持一致的选项?

0 投票
0 回答
293 浏览

docker - Kaniko 无法保存快照图像

我正在尝试使用 Kaniko 构建 docker 映像。保存快照图像时,它会返回错误,即无法将文件保存在 /dev/autofs 中,因为它是无效参数。它仅在安装 TensorFlow 时发生。

我也在 github 中发现了一些相关的问题

任何想法是什么导致了这个问题?

这是 Dockerfile 内容

错误日志 GitLab 构建日志

0 投票
0 回答
120 浏览

jenkins - 如何使用 Kaniko 在 jenkins 管道中定义或配置 configmap

我在 Jenkins Pipeline 中使用 Kaniko 来构建 Docker Image。

在詹金斯我定义詹金斯管道脚本是这样的:

这是我在网上看到的文档,我有一个问题,在这个 Script 文件中,插入了 yaml 文件来定义 kubernetes POD,但在卷中有一个标签 configMap:

我的问题是如何直接在 Jenkins 中定义这个 configMap。

0 投票
2 回答
267 浏览

kubernetes - 如何在 Jenkins 中使用 Pod yaml 文件创建容器

我使用 POD yaml 文件在 Kubernetes 中创建一个 pod。

我的 yaml 文件很简单,如下所示:

但我收到此错误消息:

我在 Jenkins 管道中运行这个 pod 文件,以便可以安装 Kaniko 来构建 docker 映像。

任何解决方案?

0 投票
1 回答
1233 浏览

jenkins-pipeline - 如何在 Jenkins Pipeline Script 中使用 Kaniko 构建 Docker Image

我想在我的 jenkins 脚本(groovy)文件中使用 Kaniko 来构建图像。

我的 jenkins 中没有其他配置,我只想使用我的 jenkins 脚本

脚本如下所示:

但我已经尝试了几次并得到了这个错误:

创建的 Pod:kubernetes crpcc-jenkins-prodslaves/jenkins-kaniko-hrfk9-j06mk [警告][crpcc-jenkins-prodslaves/jenkins-kaniko-hrfk9-j06mk][FailedScheduling] 0/33 个节点可用:33 个节点与节点选择器不匹配。[警告][crpcc-jenkins-prodslaves/jenkins-kaniko-hrfk9-j06mk][FailedScheduling] 0/33 个节点可用:33 个节点与节点选择器不匹配。[警告][crpcc-jenkins-prodslaves/jenkins-kaniko-hrfk9-j06mk][FailedScheduling] 0/33 个节点可用:33 个节点与节点选择器不匹配。[警告][crpcc-jenkins-prodslaves/jenkins-kaniko-hrfk9-j06mk][FailedScheduling] 0/33 个节点可用:33 个节点与节点选择器不匹配。[警告][crpcc-jenkins-prodslaves/jenkins-kaniko-hrfk9-j06mk][FailedScheduling] 0/33 个节点可用:33 个节点与节点选择器不匹配。[警告][crpcc-jenkins-prodslaves/jenkins-kaniko-hrfk9-j06mk][FailedScheduling] 0/33 个节点可用:33 个节点与节点选择器不匹配。[警告][crpcc-jenkins-prodslaves/jenkins-kaniko-hrfk9-j06mk][FailedScheduling] 0/33 个节点可用:33 个节点与节点选择器不匹配。[警告][crpcc-jenkins-prodslaves/jenkins-kaniko-hrfk9-j06mk][FailedScheduling] 0/33 个节点可用:33 个节点与节点选择器不匹配。[警告][crpcc-jenkins-prodslaves/jenkins-kaniko-hrfk9-j06mk][FailedScheduling] 0/33 个节点可用:33 个节点与节点选择器不匹配。[警告][crpcc-jenkins-prodslaves/jenkins-kaniko-hrfk9-j06mk][FailedScheduling] 0/33 个节点可用:33 个节点与节点选择器不匹配。[警告][crpcc-jenkins-prodslaves/jenkins-kaniko-hrfk9-j06mk][FailedScheduling] 0/33 个节点可用:33 个节点与节点选择器不匹配。[警告][crpcc-jenkins-prodslaves/jenkins-kaniko-hrfk9-j06mk][FailedScheduling] 0/33 个节点可用:33 个节点与节点选择器不匹配。[警告][crpcc-jenkins-prodslaves/jenkins-kaniko-hrfk9-j06mk][FailedScheduling] 0/33 个节点可用:33 个节点与节点选择器不匹配。[警告][crpcc-jenkins-prodslaves/jenkins-kaniko-hrfk9-j06mk][FailedScheduling] 0/33 个节点可用:33 个节点与节点选择器不匹配。[警告][crpcc-jenkins-prodslaves/jenkins-kaniko-hrfk9-j06mk][FailedScheduling] 0/33 个节点可用:33 个节点与节点选择器不匹配。[警告][crpcc-jenkins-prodslaves/jenkins-kaniko-hrfk9-j06mk][FailedScheduling] 0/33 个节点可用:33 个节点与节点选择器不匹配。[警告][crpcc-jenkins-prodslaves/jenkins-kaniko-hrfk9-j06mk][FailedScheduling] 0/33 个节点可用:33 个节点与节点选择器不匹配。[警告][crpcc-jenkins-prodslaves/jenkins-kaniko-hrfk9-j06mk][FailedScheduling] 0/33 个节点可用:33 个节点与节点选择器不匹配。[警告][crpcc-jenkins-prodslaves/jenkins-kaniko-hrfk9-j06mk][FailedScheduling] 0/33 个节点可用:33 个节点与节点选择器不匹配。[警告][crpcc-jenkins-prodslaves/jenkins-kaniko-hrfk9-j06mk][FailedScheduling] 0/33 个节点可用:33 个节点与节点选择器不匹配。[警告][crpcc-jenkins-prodslaves/jenkins-kaniko-hrfk9-j06mk][FailedScheduling] 0/33 个节点可用:33 个节点与节点选择器不匹配。

任何解决方案?

0 投票
1 回答
1381 浏览

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

据我了解:

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

我可以收集的差异:

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

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

0 投票
1 回答
206 浏览

docker - 在 Kaniko/Gitlab 上创建 Windows Docker 容器时出错

我正在尝试使用 Kaniko/Gitlab 创建一个 Windows Docker 容器。
这是我看到的错误:

这是 .gitlab-ci.yml 文件的普通文本:

这是 Docker 文件的普通文本代码:

0 投票
1 回答
926 浏览

docker - 无法使用 kaniko 从 GitLab CI 构建 Docker 映像并将其推送到(私有)Artifactory

我正在设计一个 GitLab CI 管道来为给定的服务构建一个 Docker 映像。

这是 Gitlab CI 清单到目前为止的样子(相关摘录):

$kaniko_config文件翻译成这个 JSON:

现在每次我运行管道时,我都会得到这个输出:

我在这里做错了什么?此外,我不知道为什么错误消息上有https://artifactory.tld.com/v2//v2),因为我没有使用类似的东西。

0 投票
0 回答
524 浏览

docker - kaniko 可以按每个阶段拍摄快照吗?(不是每个 RUN 或 COPY 操作)

我有一个 Dockerfile,我正在使用 Kaniko 在 Google Cloud Build (GCP) 上构建容器映像。

关于我的 Dockerfile

Dockerfile 有 4 个阶段(多阶段构建)。并且在 Dockerfile 中有 13 个RUN或步骤。COPY

当前构建速度。

GCP 上的 Kaniko

  • Kaniko 的完整构建:大约 10 分钟。
  • 无需更改代码即可重建:大约3~4 分钟

docker 在我的本地 Mac 上构建

  • 完整构建:大约 6 分 58 秒。
  • 无需更改代码即可重建:3.48 秒。

问题

如果 Kaneko 可以做到,我想尝试减少缓存拉取和缓存保存的次数。

Kaniko 看起来没有在每个 docker build 阶段拍摄快照的选项。(不是每一步) https://github.com/GoogleContainerTools/kaniko/blob/master/README.md

有谁知道解决方案?

否则,您是否有关于抑制缓存拉取/缓存节省开销的想法?

0 投票
0 回答
244 浏览

docker - Docker COPY 不复制文件

我已经在 SO 上查看了其他一些答案,我认为它们中的任何一个都不适用于我(例如,我没有.dockerignore)。

我有一个包含以下内容的 docker 文件:

构建过程(我正在使用kanikoviagitlab构建图像https://docs.gitlab.com/ee/ci/docker/using_kaniko.html)似乎执行了必要的操作:

但是,在成功构建后尝试docker run容器时出现错误:

我可以确认所有四个文件都存在于源目录中。

我还可以确认所有目标目录都存在(即,我已通过 检查图像docker run --rm -it *pathtocontainer* bash)。我的手动检查还确认只有 3/4 文件实际复制。

=======

回复:评论中的问题