Prunemate y Docker: El Guardián Silencioso que Mantiene tu Servidor Limpio

Prunemate y Docker: El Guardián Silencioso que Mantiene tu Servidor Limpio

Cualquier entusiasta del self-hosting que experimente con Docker conoce el problema: con el tiempo, el servidor se llena de imágenes antiguas, volúmenes anónimos olvidados y redes obsoletas. Esto consume espacio valioso y degrada el rendimiento. Prunemate es la solución elegante y automatizada.



¿Qué Hace Prunemate?

Prunemate es una aplicación web ligera, construida con Python (Flask), dedicada a ejecutar el comando docker system prune y sus variantes de forma programada y recurrente. En lugar de ejecutar comandos manuales en la terminal, obtienes una interfaz gráfica para:

  1. Programación Automática: Define un horario (diario, semanal, mensual) para la limpieza. La automatización se maneja internamente con APScheduler.

  2. Limpieza Selectiva: Permite la eliminación segura de varios tipos de recursos:

    • Imágenes Colgantes (Dangling): Imágenes sin etiqueta que no son utilizadas por ningún contenedor.

    • Volúmenes no Usados: Volúmenes que ya no están asociados a ningún contenedor.

    • Redes Obsoletas y Caches: Limpieza de redes y la caché de construcción de Docker.

  3. Seguridad y Simplicidad: Su diseño minimalista hace que la configuración sea rápida y reduce el riesgo de errores humanos al ejecutar comandos prune.

Despliegue Crítico con Docker

Para que Prunemate pueda limpiar Docker, necesita acceso para interactuar con el daemon de Docker. Esto requiere un paso crucial en el docker-compose.yml: mapear el socket de Docker.

YAML
services:
  prunemate:
    image: [nombre de la imagen de prunemate]
    container_name: prunemate
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock # ¡Acceso vital!
      - ./config:/app/config # Persistencia de la configuración y horarios
    ports:
      - "8081:8081" # Puerto de la interfaz web
    restart: unless-stopped

⚠️ Advertencia: Mapear el docker.sock otorga al contenedor control total sobre tu host de Docker. Asegúrate de que confías plenamente en la imagen de Prunemate.

Una vez configurado con acceso al socket, accedes a la interfaz web para programar la limpieza y delegar esta tarea de mantenimiento a tu nuevo guardián automatizado.

Si tu Home Lab lucha contra el consumo de espacio de disco debido a Docker, Prunemate es una herramienta esencial para la higiene del servidor.

Proyecto en Github

https://github.com/JLalib/docker-prunemate





🔗 Enlaces de Interés y Apoyo al Canal 🔗

Comunidad GENBYTE

Redes



Comentarios