tag run library dockers container docker centos openvz

run - Instalar Docker en OpenVZ VPS



dockers container download (2)

Tengo un OpenVZ VPS, el sistema operativo es CentOS 6, intento instalar Docker, pero Docker inicia el error.

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 ]


Tema anterior: sin embargo, la solución se puede encontrar tratando a CentOS6 como si se tratara de un debian wheezy en este enlace: https://openvz.org/Docker_inside_CT

Básicamente, en /etc/init.d/docker do:

prestart() { # ALF service cgconfig status > /dev/null # ALF # ALF if [[ $? != 0 ]]; then # ALF service cgconfig start # ALF fi mount -t tmpfs tmpfs /sys/fs/cgroup mkdir /sys/fs/cgroup/freezer,devices mount -t cgroup cgroup /sys/fs/cgroup/freezer,devices -o freezer,devices mkdir /sys/fs/cgroup/cpu,cpuacct,cpuset mount -t cgroup cgroup /sys/fs/cgroup/cpu,cpuacct,cpuset/ -o cpu,cpuacct,cpuset }


Actualizado en diciembre de 2016. Traté de no duplicar la respuesta de @Alien Life Form pero agregué más detalles.

Respuesta corta :

En la mayoría de los casos, el alojamiento OpenVZ utilizará OpenVZ 6 con un kernel obsoleto que no es compatible con Docker.

Docker solo es compatible con OpenVZ 7 (basado en kernel 3.x, consulte https://openvz.org/Docker_inside_CT_vz7 ) o con OpenVZ 6 con kernel versión 042stab105.4 o posterior (consulte https://openvz.org/Docker_inside_CT ) .

Larga respuesta :

Docker requiere dos características del kernel de Linux para operar: grupos de control y espacios de nombres. Entonces necesitas un kernel con estas características.

Con OpenVZ no controlas tu kernel, solo la compañía de hosting lo hace. La mayoría de las empresas de hosting no colaborarán y actualizarán el kernel, por lo que si el kernel resulta ser incompatible, generalmente no tiene suerte.

OpenVZ 7 está basado en núcleos 3.10 que soportan Docker directamente, sin embargo, aún no he visto un hosting OpenVZ 7 - KVM parece ser la virtualización más popular con nuevos proveedores de bajo costo entrando al mercado.

OpenVZ 6 es más común en proveedores más antiguos, y se basa en un kernel 2.6 generalmente incompatible con Docker. Sin embargo, los núcleos OpenVZ no son kernels 2.6 normales, pero tienen algunas características respaldadas por kernels 3.x De hecho, kernel 042stab105.4 y posterior soportan las características que Docker necesita de acuerdo con la wiki oficial de OpenVZ (vea la respuesta @Alien Life Form).

El texto a continuación solo se aplica a la versión 6 de OpenVZ.

Si uname -a muestra kernel 042stab105.4 o posterior, puede usar Docker con algunos ajustes para montar los sistemas de archivos especiales requeridos.

Si es más antiguo y la empresa está dispuesta a colaborar, no pueden instalar un núcleo principal, ya que es incompatible con OpenVZ. Deben instalar un kernel especial con parches OpenVZ de https://openvz.org/Download/kernel . Preferiblemente la última versión estable (que es 042stab120.11 en el momento de la escritura) pero al menos 042stab105.4 . En comparación, todos los hosts OpenVZ que he visto tienen algo así como 2.6.32-042stab075.2 , que no solo es incompatible con Docker, sino también vulnerable. Entonces puede intentar usar el argumento de vulnerabilidad para forzar el soporte en la actualización :)

Otra solución obvia pero no siempre aplicable es pasar de OpenVZ a un hosting con otra tecnología de virtualización como Xen o KVM. Sin embargo, puede ser que el kernel principal de CentOS 6 no tenga las funciones necesarias, por lo que CentOS 6 solo podría ser compatible con Docker cuando se ejecuta con kernels sin stock parcheado. Así que puedes considerar mudarte a CentOS 7 también.