sábado, 8 de agosto de 2020

Docker en Fedora 31/32 this version of runc doesn't work on cgroups v2

En Fedora Fedora 31 se introdujo cgroups v2, considerado estable desde 2016, pero no adoptado por las distribuciones. Desde la versión 31 de Fedora trabajar los contenedores con Docker es imposible debido a que no tiene soporte para cgroups v2 a pesar de las mejoras y errores corregidos que éste último tiene en comparación con cgroups v1.

A partir de este inconveniente muchos usuarios de Fedora han estado usando otros motores de contenedores que sí soportan cgroups v2 (Podman o Buildah) pero si quieres volver a Docker y dejar atrás esos motores, y no te afecta en nada regresar a cgroups v1, puedes seguir estos pasos:

Desinstalamos todo lo relacionado (esto no afecta en nada las images que ya tenemos).
$ sudo dnf remove -y docker-compose podman moby-engine containerd
Agregamos el repositorio Docker.
$ sudo dnf -y install dnf-plugins-core
$ sudo nano /etc/yum.repos.d/docker-ce.repo
[docker-ce-stable]
name=Docker CE Stable - x86_64
baseurl=https://download.docker.com/linux/fedora/31/x86_64/stable
enabled=1
gpgcheck=1
gpgkey=https://download.docker.com/linux/fedora/gpg
Instalamos Docker Community Edition.
$ sudo dnf install -y docker-ce docker-ce-cli mlibcgroup containerd.io
Modificamos GRUB para que cargue el Kernel con cgroups v1.
$ sudo grubby --update-kernel=ALL --args="systemd.unified_cgroup_hierarchy=0"
Configuramos el entorno para nuestro usuario.
$ sudo groupadd docker
$ sudo usermod -aG docker $USER
$ sudo systemctl enable docker.service
Finalmente, reiniciamos el sistema.
$ sudo shutdown -r now
Al regresar todo debería funcionar a la perfección:
$ docker version
Client: Docker Engine - Community
 Version:           19.03.12
 API version:       1.40
 Go version:        go1.13.10
 Git commit:        48a66213fe
 Built:             Mon Jun 22 15:46:56 2020
 OS/Arch:           linux/amd64
 Experimental:      false

Server: Docker Engine - Community
 Engine:
  Version:          19.03.12
  API version:      1.40 (minimum version 1.12)
  Go version:       go1.13.10
  Git commit:       48a66213fe
  Built:            Mon Jun 22 15:44:53 2020
  OS/Arch:          linux/amd64
  Experimental:     false
 containerd:
  Version:          1.2.13
  GitCommit:        7ad184331fa3e55e52b890ea95e65ba581ae3429
 runc:
  Version:          1.0.0-rc10
  GitCommit:        dc9208a3303feef5b3839f4323d9beb36df0a9dd
 docker-init:
  Version:          0.18.0
  GitCommit:        fec3683
Más información:

No hay comentarios:

Publicar un comentario