Marcio Cunha

¿Docker sin espacio? Cómo limpiar caché y liberar disco en Linux

¿Tu servidor se quedó sin espacio por culpa de Docker? Aprende a usar el comando docker system prune para eliminar imágenes y contenedores huérfanos con seguridad.

Marcio Cunha•2 min
También disponible en:PortuguêsEnglish
Resumen
  • La acumulación de capas de imágenes antiguas y archivos de registro es la causa principal de la falta de espacio en servidores Docker.
  • El comando docker system prune es la herramienta estándar para descartar automáticamente todos los recursos detenidos sin afectar los servicios en ejecución.
  • Los volúmenes de datos no se eliminan de forma predeterminada en el prune, protegiendo tus bases de datos y archivos persistentes contra borrados accidentales.
  • La estrategia de limpieza debe combinarse con el monitoreo de logs, ya que el registro excesivo a menudo consume más espacio que los propios contenedores.
  • Programar limpiezas manuales o mediante crontab ayuda a mantener la salud del servidor, pero requiere atención a las imágenes base compartidas entre proyectos.

¿Por qué Docker consume tanto espacio en disco?

Docker trabaja con un sistema de capas. Cada vez que construyes una imagen o descargas una nueva versión de una biblioteca, Docker almacena fragmentos de archivos en el disco. Con el tiempo, imágenes antiguas que ya no se usan, contenedores detenidos y caché de compilaciones se acumulan y ocupan gigabytes valiosos. En la práctica, lo que vemos en servidores de producción es una acumulación silenciosa de "basura" digital.

Cómo identificar qué está ocupando espacio

Antes de borrar todo, es bueno saber dónde reside el problema. Usa el comando docker system df para obtener una visión general del uso de espacio. Muestra exactamente cuánto de tu disco está siendo utilizado por imágenes, contenedores y volúmenes. Si notas que el valor de "reclaimable" (recuperable) es alto, es momento de actuar. Recuerda que, además de Docker, procesos del sistema pueden afectar el almacenamiento, y saber cómo usar htop para hallar procesos pesados en Linux es una gran práctica de soporte técnico.

El poder del comando docker system prune

El comando docker system prune es la forma más directa de limpiar lo que no se está usando. Elimina contenedores detenidos, redes no utilizadas e imágenes sin etiqueta (aquellas que quedan con nombre y tag como ). No toca los volúmenes a menos que lo pidas específicamente. Si el problema persiste, puede ser útil consultar cómo borrar volúmenes huérfanos fácilmente para ganar aún más espacio con seguridad.

  1. Verifica el estado actual del disco:
    docker system df
  2. Ejecuta la limpieza básica (sin eliminar volúmenes):
    docker system prune
  3. Para una limpieza agresiva, incluyendo volúmenes no usados (¡cuidado!):
    docker system prune -a --volumes

Cuidados al limpiar volúmenes e imágenes

Limpiar el entorno es necesario, pero requiere cautela. La opción --volumes borra permanentemente datos persistentes que no están conectados a ningún contenedor. Si tienes bases de datos que fueron desconectadas por un error de red o reconfiguración, esos datos se perderán. Siempre verifica que no haya contenedores importantes en estado detenido que deban reiniciarse antes de ejecutar el prune. La automatización es útil, pero el control manual sobre lo crítico garantiza que no necesites restaurar respaldos en momentos críticos. Para profundizar en estos conceptos arquitectónicos en producción, consulte también nuestro análisis técnico sobre Pods bloqueados en Terminating? Cómo forzar su eliminación.

Conclusión

Recuperar espacio en Docker es una tarea esencial de mantenimiento para mantener servidores estables y prevenir caídas por falta de almacenamiento. Al integrar docker system prune en tu rutina de operaciones, garantizas un entorno limpio y eficiente, evitando sorpresas desagradables en producción.

La práctica de mantener el entorno liviano va más allá del ahorro de disco; facilita auditorías de seguridad y simplifica la gestión de versiones. Usa estas herramientas con responsabilidad y mantén tu servidor siempre listo para escalar sin el peso de archivos olvidados.