gpt4 book ai didi

docker - 如何在 centos 7 lxc 中运行 docker?

转载 作者:太空宇宙 更新时间:2023-11-03 17:23:19 28 4
gpt4 key购买 nike

我使用 security.privilegedsecurity.nesting 让它在 Ubuntu 上正常工作。然而,对于 centos7,docker 守护进程在尝试拉取图像时失败。它甚至无法运行 hello-world。存在某些文件夹不存在的 cgroup 违规。无论如何,有没有这样做的成功例子?我最终尝试运行 Kubernetes 并为 master 和 worker 使用 lxc/lxd 容器,但我需要它在 centos 中工作。确切的错误信息:

docker:来自守护进程的错误响应:OCI 运行时创建失败:container_linux.go:348:启动容器进程导致“process_linux.go:279:为进程应用 cgroup 配置导致\”open/sys/fs/cgroup/systemd/lxc/docker-test/docker/cpuset.cpus: 没有那个文件或目录\"": 未知。
ERRO[0000] 错误等待容器:上下文已取消

确切的设置是一个 centos7 Digital Ocean Droplet,其中安装并构建了 lxd。使用 lxc 我创建了一个 centos7 容器。在那个机器容器中,我正在尝试运行 docker。我意识到这就像容器启动,但它绝对适用于 ubuntu,所以我想它应该适用于 centos。

最佳答案

我在 Fedora-28 (LXC) 主机中运行 CentOS-7.6 Linux/LXC 容器 (GUEST) 时遇到了这个确切的问题;当尝试在 CentOS-7.6 LXC 容器中使用 Docker 时。我做了一些研究,并从这些网络资源中拼凑出一个解决方案:


解决方案:

jdoe@HOST$ sudo echo "root:1000000:65536" | sudo tee -a /etc/subuid /etc/subgid
# The above is performed once on the LXC HOST! (the outermost server).

# ---------------------------------------------------------------------------------
# Next, add these entries to the config file of the Linux/LXC container giving
# you the exception, (noting that blank 'lxc.cap.drop =' is not a mistake).
# ---------------------------------------------------------------------------------
security.nesting = true
security.privileged = true
lxc.aa_profile = unconfined
lxc.cgroup.devices.allow = a
lxc.mount.auto=proc:rw sys:rw
lxc.cap.drop =
# ---------------------------------------------------------------------------------

这消除了与您的错误非常相似的错误,并使一切正常进行。希望对您有所帮助。

关于docker - 如何在 centos 7 lxc 中运行 docker?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50270772/

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