问题标签 [garden-runc]
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.
cloud-foundry - 通过 Garden API 在 Runc 容器中执行流程
我有一个Cloud Foundry Bosh Lite安装,在我的本地开发机器上运行了Garden/Runc 支持,并在其上托管了一个应用程序。我可以 ssh 进入 Diego cell 虚拟机并执行
这将产生以下输出:
我以为我可以通过调用Garden API来实现同样的目的
但是,这将返回
不幸的是,这什么也没告诉我。我尝试添加"user":"vcap"
JSON 有效负载,但结果是相同的。当我添加时,-H "Content-Type: application/json" -d
我得到
问题:如何通过 Garden API 在容器内执行任意命令并检索其输出?
docker - CF Garden-runC as a container orchestration engine?
I have been looking at Garden-runC / Guardian and am wondering if it can be used outside of CloudFoundry as a container orchestration engine.
From what I have been able to understand so far:
A garden client can use the Garden API to talk to a backend implementation (in this case Gaurdian), which would be able to deploy a container using its runtime (runC).
It would also perhaps require a wshd process to be packaged as part of the container, as that is what garden seems to use to control execution of processes inside the container.
While I realise that it's a lot more complex than that, and I am not sure how the backend would get the image it needs, etc., would it at least in theory be possible to use Garden / Guardian as a container orchestration engine?
concourse - 如何在大厅工作人员 runC 容器上设置卷大小?
如何在大厅工作人员 runC 容器上设置卷大小?我可以garden.btrfs_store_size_mb
在我的 BOSH 清单中设置它与 garden-linux 一起出现。我没有看到 garden-runc 的等效选项。我们的CFOps备份空间不足。谢谢
cloud-foundry - Cf 容器中的线程
我想知道,在 CF Garden Container 中使用多个线程是否是个好主意。根据 12 Factor 应用程序,我的理解是一个容器一个进程和一个线程。但是,在与同事讨论后,我不再那么确定了。
那么,在 CF 中使用线程池是个好主意吗?
此致
ubuntu-16.04 - 如何为在 ubuntu xenial 上运行的花园容器配置 cgroup cpu 配额
我正在尝试为在 Ubuntu Xenial 上运行的花园容器配置 cpu 配额,如下所示。
早些时候在使用 Ubuntu Trusty 时,我们可以通过编辑以下文件来配置花园容器的 CPU 配额。
有人可以帮我在 Ubuntu Xenial OS 上为花园容器配置 cpu 配额。
docker - 在 Concourse 容器中运行 systemd
我目前正在尝试启用一个启用 systemd 的 CentOS 容器,以便用作 Concourse 任务的环境。相关的管道正在构建安装由 systemd 管理的服务的 RPM 包,我希望在尽可能接近预期用例的环境下运行测试。我的容器基于CentOS Docker Hub 镜像描述中关于在 CentOS 容器中使用 systemd 的简短手册。
我不是 100% 确定决定性问题是什么,但它似乎与以下情况之一有关(我不确定这些情况是否全部或仅部分需要修复/解决方法):
- 似乎不可能将主机(或者更确切地说是 Concourse 工作人员的,因为它在 Docker 中使用 Docker)cgroup 文件系统正确绑定挂载到 CentOS 容器中,因为 Concourse 没有为任务绑定挂载的配置。我试图在容器内“从头开始”生成必要的文件系统,安装一个 tmpfs
/sys/fs/cgroup
,然后安装一个名为systemd
on的 cgroup 文件系统/sys/fs/cgroup/systemd
,但我不确定这是否应该工作。 - Concourse 使用挂载的
garden-init
二进制文件作为镜像入口点和 PID 1,这导致 systemd 在不同的 PID 下运行。根据 CentOS 手册,入口点应该是/usr/sbin/init
,这是一个符号链接/usr/lib/systemd/systemd
虽然这应该可以使用--system
标志,但我仍然无法让一切完全正常工作。
我尝试了不同的任务配置(通过特权运行fly execute
,命令通过 执行bash -exc <command>
),目的是能够systemctl is-system-running
成功运行,但一直未能成功。我尝试过的配置以及我收到的错误是:
/usr/sbin/init
无论是否从头开始挂载 systemd cgroup,无论是否运行命令,都会导致exec
错误Couldn't find an alternative telinit implementation to spawn.
。/usr/lib/systemd/systemd --system
在没有从头开始安装 systemd cgroup 的情况下运行导致 systemd 无法启动并显示错误消息
Cannot find cgroup mount point: No such file or directory
Failed to allocate manager object: No such file or directory
- 在按照描述安装 systemd cgroup 后运行
/usr/lib/systemd/systemd --system
会导致 systemd 显然正确启动(输出与根据 CentOS 文档在 Concourse 之外运行所有内容时的输出相同),但运行systemctl is-system-running
会导致错误Failed to get D-Bus connection: Operation not permitted
。
我确实设法通过复制通过 Concourse/Garden 创建的容器包并仅将入口点(或者更确切地说是 OCI config.jsonsystemctl is-system-running
的字段)编辑为 来在手动创建的 runc 容器中工作,所以看起来这就足够了满足我的要求。不幸的是,我不知道如何配置我的管道来为从 Concourse 上下文启动的容器实现这一点。process.args
/usr/sbin/init
git - 如何摆脱错误-运行garden.io时命令“git rev-parse --abbrev-ref HEAD”失败,代码ENOENT?
我将花园用于多个项目。在未更改花园配置的情况下,我在不同的 github 存储库中运行的所有 CICD 都收到以下错误。我目前的 garden 版本是 0.12.12,minikube 版本是 v1.21.0,git 版本是 2.23.0。操作系统:Windows 10
错误:命令“git rev-parse --abbrev-ref HEAD”失败,代码为 ENOENT:
我尝试的事情是升级 garden 和 minikube 的版本。还将 git 版本从 2.33.0 更改为 2.23.0。如果我在这里遗漏任何东西,请告诉我。谢谢!