问题标签 [buildah]

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 投票
2 回答
139 浏览

docker - 需要时重建容器

0 投票
0 回答
205 浏览

jenkins - 使用 Podman Jenkins 容器管道构建 docker 映像时,Buildah 缺少依赖项

我有一个 Jenkins 作为 podman 容器运行,现在我想使用管道构建一个图像,但是 Jenkins 容器总是告诉这些文件没有找到。

Jenkins_Buildah 错误

这是我运行 Jenkins 映像的方式:

podman run -u root -d -v jenkins_home:/var/jenkins_home -v $(which buildah):/usr/bin/buildah -p 8085:8080 -p 50000:50000 --name jenkins_buildah jenkins/jenkins:lts

0 投票
1 回答
128 浏览

containers - buildah - 无法在 PATH 中找到 Python 可执行文件集

我正在尝试构建一个基本图像并执行 Python Django Web 应用程序的容器。我已经执行了以下步骤,但是当我尝试运行容器时,它会抛出一条错误消息,指出找不到 python3.8 可执行文件。如果我在这里遗漏任何东西,请告诉我。当我尝试在容器中检查时,我可以看到它们存在 python 可执行文件

0 投票
0 回答
302 浏览

python - 什么是基于 debian 的 ansible-bender 的可用基础镜像?

我想用 ansible-bender 构建一个 docker 映像,这是 ansible v2.10 的推荐方式,不推荐使用 ansible-container。

所以...起初我认为我只是使用 debian:buster-slim 图像作为 docker hub 的基础

没关系,因为这个镜像不包含python安装

好的,还有另一个图像,python 在 docker hub 上也有一个 repo,还有一个基于 buster slim 的图像(python:3.8-slim-buster):

我想太好了,现在我可以开始构建我想要的图像了。所以我切换了任务

好的, apt 模块上的文档确实提到了它,这是一种期待:

但是现在,这个图像中的 python 安装不是来自发行版的,所以安装 python3-apt 将无济于事,甚至不能导入:

并且没有 python 模块:有人可以通过例如 pip 安装的 apt 或 apt_pkg,而且我对 python 安装并不感兴趣,我想构建一个 docker 映像。当然,我想用 ansible 构建它,并且是用 python 编写的,但是......有那么难吗!?我的意思是,我尝试安装基于发行版的 python 3.7 和 python3-apt 包,但由于 PATH,ansible 默认情况下仍在查看 /usr/local/bin 的安装,并且 ;-) 不要尝试在运行时切换 PATH剧本。

我是不是想错了,我应该使用不同的基本映像(debian 是必需的) - 任何在相同问题中运行的人都有一个想法!?

是的,我知道使用基于 distri 的 python 安装和所需模块以另一种方式扩展 debian:buster-slim 映像的可能性,将其推送到注册表并将其用作基本映像。但我很懒,这是一个很长的过程中的另一个步骤,涉及 gitlab 管道、rundeck 上的 api 请求、rundeck 中的另一个 ansible playbook 等等......

0 投票
1 回答
220 浏览

docker - Docker CLI、Podman 和其他类似工具是否可以为图像共享本地存储?

我最近开始使用 podman,并意识到通过 docker 拉取的图像无法用于 podman,反之亦然。例如:-

如果我使用 docker CLI 拉取镜像,如下所示

如果我想在 podman 或 buildah 中使用相同的图像,结果我不能

我知道这是因为 podman 和 docker 都使用不同的存储位置,因此通过 docker 下拉的图像无法与 podman 一起使用,反之亦然。

有没有办法缓解这个问题,并以某种方式使 docker 和 podman 在同一个图像上可互换地工作,无论它是通过 docker 还是 podman 拉下来的?

0 投票
1 回答
79 浏览

docker - Buildah:创建图像的工作流程

我习惯使用 docker,并从 Dockerfile 创建容器,然后再次构建/运行它以测试并使其工作。

我正在测试 Buildah。我喜欢动态创建容器的方式。但是我需要保存容器的创建方式。目前我:

  • 写命令发送命令,复制文件...
  • 然后将这些命令复制粘贴到 bash 文件中
  • 我可能会 git 保存这个 bash 文件。

我不喜欢这个过程,你个人如何以更有效的方式保存你的更改?

0 投票
1 回答
2306 浏览

docker - 在 gitlab-ci 中运行 buildah

我想使用 gitlab-ci 中的 buildah 来构建图像,从中运行容器并对其进行一些测试。

我目前的 gitlab-ci 是:

我的跑步者是私人 gitlab 跑步者,我不想改变它的配置(为了不破坏其他 CI)。

run.sh 的内容是:

错误是:

结果buildah info --debug

我阅读了其他有关我遇到的错误的帖子并来到了这个配置,这还不够。我选择 buildah 是因为认为它很容易从 CI 中使用,因为它应该可以无根运行,但这是一场真正的噩梦……我是可怜的孤独开发人员,而不是系统管理员,我不明白如何设置 linux为 buildah ...有人可以帮助我吗?

0 投票
1 回答
381 浏览

containers - 如何在无根 podman 容器中运行 buildah?

我曾尝试将保险丝设备添加到容器中,但失败了。

似乎应该采取一些特殊的权利。

0 投票
0 回答
412 浏览

github-actions - 使用 github 操作/缓存缓存 buildah 图像(基础 + 创建)

我想缓存 buildah 图像,以便每次使用 github 操作/缓存时都不会拉取它们。你能帮我理解应该缓存哪些图层吗?我从 ~/var/lib/containers 和 /var/lib/containers 开始,但这并没有帮助

0 投票
1 回答
280 浏览

docker - 如何验证我的 buildah 容器映像实际上是在我的 Tekton Task 中创建的

我正在我的 Kind 集群上创建一个 Tekton 管道。我有一个Taskstep一个使用 buildah 构建容器映像的地方。现在我想验证容器镜像是否真的被创建了。

所以在接下来step,我尝试“查看”我的容器图像(使用ls)。我已经将一个emptyDir卷安装到Task,并且我的安装路径是/var/lib/containers(默认情况下 buildah 放置其工件的位置)。我试过ls /var/lib/containers在下面做一个step,但我得到了no such file or directory回应。我想这是因为第二个step发生在一个新容器中?但我认为该卷存在于我的所有容器中,用于这个特定的Task. 如您所见,我对它的工作原理不是很了解。

那么有什么好的方法来验证我的容器镜像是真的创建的吗?例如,我可以在Task完成后阻止 pod 终止,以便我可以进入容器并浏览文件系统或其他东西吗?

这是Task定义: