Espacio en disco lleno en Ubuntu por /var/lib/docker/overlay2

Error: No space left, pero el disco no está lleno

En esta ocasión vi que mi VPS con Ubuntu y un contenedor en docker de SQL Server y 2 aplicaciones en Net Core estaba al 99.99% de espacio en disco, el cuál ejecutando comandos como

sudo df -h

ó

du -hs * | sort -nr | head -3

Me ayudaron a identificar que era una carpeta de Docker:

/var/lib/docker/overlay2

Leyendo por internet vi algunos comandos como:

docker system prune --all

Que ayuda a depurar tu flujo en docker, es peligroso ya que elimina definitivamente contenedores que estén detenidos, yo sin conflicto alguno lo ejecuté y no me liberó nada de espacio.

Navegando y navegando me encontré con el siguiente comando que me funcionó:

sudo sh -c "truncate -s 0 /var/lib/docker/containers/*/*-json.log"

lo cual hace referencia a el Controlador de registro de archivos JSON y en la documentación oficial podemos configurar como deben crecer en tamaño y cantidad.

https://docs.docker.com/engine/logging/drivers/json-file

Ejemplo máximo de 3 registros archivos de no más de 10 megabytes cada uno:

docker run -it --log-opt max-size=10m --log-opt max-file=3 alpine ash