Docker在RHEL 6 Cgroup安装失败

我试图让我的头在CentOS + Vagrant上工作,但不在我们的提供者RHEL(红帽企业Linux服务器版本6.5(圣地亚哥))。 一个sudo服务docker工人重新启动这个:

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

该服务启动okey足够,但图像无法运行。 当我尝试时显示安装失败的错误。 而启动日志也给出了一两个警告。 关于kernelwarning,centos给出了和Epel应该解决这个问题一样的问题:

 WARNING: You are running linux kernel version 2.6.32-431.17.1.el6.x86_64, which might be unstable running docker. Please upgrade your kernel to 3.8.0. 2014/08/07 08:58:29 docker daemon: 1.1.2 d84a070; execdriver: native; graphdriver: [1233d0af] +job serveapi(unix:///var/run/docker.sock) [1233d0af] +job initserver() [1233d0af.initserver()] Creating server 2014/08/07 08:58:29 Listening for HTTP on unix (/var/run/docker.sock) [1233d0af] +job init_networkdriver() [1233d0af] -job init_networkdriver() = OK (0) 2014/08/07 08:58:29 WARNING: mountpoint not found 

任何人都可以克服这个问题,或者我应该等待提供者更新到RHEL 7?

我有同样的问题。

在这里输入图像说明

(1)检查cgconfig状态

#/etc/init.d/cgconfig状态

如果停止,重新启动它

#/etc/init.d/cgconfig重启

检查cgconfig是否正在运行

在这里输入图像说明

(2)检查cgconfig是否打开

#chkconfig –list cgconfig

cgconfig 0:closures1:closures2:closures3:closures4:closures5:closures6:closures

如果cgconfigclosures,请将其打开

在这里输入图像说明

(3)如果仍然不起作用,可能会有一些cgroups模块丢失。 在内核.config文件中,make menuconfig,将这些模块添加到内核中并重新编译并重启

之后,应该可以

在这里输入图像说明

我最终在Google Groups上提出了同样的问题,并最终find了一些解决scheme并提供了一些帮助 。 这对我有效:

 umount cgroup sudo service cgconfig start 

使Docker工作的项目也停止了。 后来一个容器的networking连接问题。 这花了很多时间来解决,不得不放弃。

所以我花了整整一天的时间来尝试操纵docker工来使用我的vps。 我遇到了同样的错误。 基本上是这样的:OpenVZ直到几个月前才支持Docker容器。 具体来说,这个RHEL更新:

https://openvz.org/Download/kernel/rhel6/042stab105.14

假设这是你的问题,或者它的一些变化,解决它的负担是在你的主机上。 他们将需要遵循以下步骤:

https://openvz.org/Docker_inside_CT

在我的情况

 /etc/rc.d/rc.cgconfig start 

正在产生

启动cgconfig服务:错误:无法将cpu,cpuacct,内存挂载到/ cgroup / cpu_and_mem:设备或资源忙/ usr / sbin / cgconfigparser; 加载/etc/cgconfig.conf时出错:Cgroup挂载失败无法parsing/etc/cgconfig.conf

我不得不使用:

 /etc/rc.d/rc.cgconfig restart 

并且它自动地无视和挂载组

停止cgconfig服务:启动cgconfig服务:

看起来像cgconfig服务没有运行,所以检查它!

 # /etc/init.d/cgconfig status # mkdir -p /cgroup/cpuacct /cgroup/memory /cgroup/devices /cgroup/freezer net_cls /cgroup/blkio # cat /etc/cgconfig.conf |tail|grep "="|awk '{print "mount -t cgroup -o",$1,$1,$NF}'>cgroup_mount.sh # sh ./cgroup_mount.sh # /etc/init.d/cgconfig restart # /etc/init.d/docker restart 

当使用cgroup_disable = memory引导内核并且/etc/cgconfig.conf包含memory = / cgroup / memory;

这会导致只安装/ cgroup / cpuset而不是整个集合。

解决scheme:从内核启动选项中删除cgroup_disable = memory或注释掉内存= / cgroup / memory; 来自cgconfig.conf。

cgconfig服务启动使用mountumount ,这需要cgconfig的额外权限。

有关更多信息,请参阅--privileged=true标志。

我能够通过启动我的容器来解决这个问题:
docker run -it --privileged=true my-image

testingCentOS6,Centos6.5。