Esta guía está muy inspirada en el artículo Friends Don't Let Friends Run Docker on Loopback in Production, de muy recomendada lectura.

Es importante: vas a perder todos tus datos de Docker (imágenes, contenedores, volúmenes). Respalda todo antes.

Al meollo

Primero, detén Docker y borra todos los datos de almacenamiento que tenga:

# systemctl stop docker
# rm -Rf /var/lib/docker

Edita /etc/sysconfig/docker-storage para decirle a Docker que quieres usar el motor overlay2 si usas Linux >= 4.0 y Docker >= 1.12. Si no, usa overlay, que no es compatible, pero el día de mañana solo tendrás que volver a borrar todo, cambiar el driver y reiniciar el demonio Docker.

DOCKER_STORAGE_OPTIONS="--storage-driver overlay2 "

Edita /etc/sysconfig/docker para desactivar SELinux en Docker, ya que hasta Linux 4.9 y una versión futura de Docker, no soportará los drivers overlay:

OPTIONS='--selinux-enabled=false [otras opciones]'

Borra todo lo que te creó el antiguo docker-storage-setup (el thin pool LVM y todo ese rollo). Los comandos difieren según lo tuvieras configurado, en mi caso fueron:

# lvm lvremove fedora/docker-pool

Ahora crea un  nuevo volúmen LVM:

# lvm lvcreate --name docker --extents 100%FREE fedora
# mkfs.ext4 /dev/mapper/fedora-docker

Configura tu ordenador para montarlo en /var/lib/docker, añadiendo a /etc/fstab esta línea:

 /dev/mapper/fedora-docker /var/lib/docker auto nosuid,nodev,nofail 0 0

Móntalo y arranca Docker de nuevo:

# mount /dev/mapper/fedora-docker
# systemctl start docker

Comprueba que todo funciona:

$ docker run --rm hello-world