gpt4 book ai didi

docker - 在 OpenVZ VPS 上安装 Docker

转载 作者:IT老高 更新时间:2023-10-28 12:45:37 25 4
gpt4 key购买 nike

我有一个OpenVZ VPS,操作系统是CentOS 6,我尝试安装Docker,但是Docker启动出错。

Starting cgconfig service: Error: cannot mount cpuset to /cgroup/cpuset: Invalid argument
/sbin/cgconfigparser; error loading /etc/cgconfig.conf: Cgroup mounting failed
Failed to parse /etc/cgconfig.conf or /etc/cgconfig.d [FAILED]
Starting docker: [ OK ]

最佳答案

2016 年 12 月更新。我尽量不复制 @Alien Life Form 的答案,但添加更多详细信息。

简答:

在大多数情况下,OpenVZ 托管将使用带有与 Docker 不兼容的过时内核的 OpenVZ 6。

Docker 仅支持 OpenVZ 7(基于 3.x 内核,参见 https://openvz.org/Docker_inside_CT_vz7)或内核版本为 042stab105.4 或更高版本的 OpenVZ 6(参见 https://openvz.org/Docker_inside_CT)。

长答案:

Docker 需要 Linux 内核的两个特性才能运行:控制组和命名空间。所以你需要一个具有这些特性的内核。

使用 OpenVZ,您无法控制内核,只有托管公司可以控制。大多数托管公司不会协作和更新内核,因此如果内核变得不兼容,您通常会倒霉。

OpenVZ 7 基于支持 Docker 开箱即用的 3.10 内核,但是我还没有看到 OpenVZ 7 托管 - KVM 似乎是最流行的虚拟化,新的低成本供应商进入市场。

OpenVZ 6 在较旧的供应商中更为常见,并且基于通常与 Docker 不兼容的 2.6 内核。然而,OpenVZ 内核不是普通的 2.6 内核,但很少有从 3.x 内核向后移植的功能。所以实际上内核 042stab105.4 和更高版本支持 Docker 根据官方 OpenVZ wiki 需要的功能(请参阅@Alien Life Form 答案)。

以下文字仅适用于 OpenVZ 版本 6。

如果 uname -a 显示内核 042stab105.4 或更高版本 - 您可以使用 Docker 进行一些调整以安装所需的特殊文件系统。

如果它较旧并且公司愿意合作,他们不能安装主线内核,因为它与 OpenVZ 不兼容。他们必须安装带有来自 https://openvz.org/Download/kernel 的 OpenVZ 补丁的特殊内核。 .最好是最新的稳定版本(在撰写本文时是 042stab120.11 ),但至少是 042stab105.4 。相比之下,我见过的所有 OpenVZ 主机都有类似 2.6.32-042stab075.2 的东西,它不仅与 Docker 不兼容,而且容易受到攻击。所以你可以尝试使用漏洞参数来强制支持升级:)

另一个明显但并不总是适用的解决方案是从 OpenVZ 迁移到使用另一种虚拟化技术(如 Xen 或 KVM)的主机。但是,可能是主线 CentOS 6 内核没有必要的功能,因此 CentOS 6 只能在使用非库存补丁内核运行时与 Docker 兼容。所以你也可以考虑迁移到 CentOS 7。

关于docker - 在 OpenVZ VPS 上安装 Docker,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34472937/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com