Blog del Podcast
podcast      GitHub      Twitter   Telegram

Docker. Borrar logs

Tiempo estimado de lectura: 3 minutos. 349 palabras. docker

Si tienes muchos Dockers funcionando desde hace mucho tiempo, es probable que los archivos con sus logs sea muy grande, dependiendo del servicio puede llegar incluso a varios gigas.

Si ya no tienes nada que consultar del pasado, quizás sería este el momento de borrarlos y empezar de nuevo.

Vamos a ver un par de métodos de cómo hacerlo y añadirlos a tu cron, para que periódicamente se vaya autolimpiando y despreocuparnos.

Borrar logs con find

Este es mi método favorito. Sencillo y transparente.

Listemos todos los logs disponibles

sudo find /var/lib/docker/containers/ -type f -name "*.log"

Tamaño aprox. con du

sudo du -hs /var/lib/docker/containers/

Para borrar, utilizaremos la opción -delete

sudo find /var/lib/docker/containers/ -type f -name "*.log" -delete

Para que siga registrando los nuevos logs, es necesario reiniciar los dockers.

Reiniciar todos los dockers que están corriendo

docker restart $(docker ps -q)

Quizás sea este el momento de actualizar tu sistema operativo y reiniciar tu dispositivo. Así al iniciar el sistema, se reiniciarán todos tus dockers.

Automatización con cron

Con esta opción que podemos agregar a nuestro cron, cada lunes a las 4:30h de la madrugada, se eliminaran todos los logs y se reiniciaran los dockers que esten en funcionamiento.

30 04 * * 1 ( sudo find /var/lib/docker/containers/ -type f -name "*.log" -delete ; docker restart $(docker ps -q) )

Otro método

Sería tan sencillo como ejecutar el siguiente comando

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

Fuente


Publicado por Angel el Thursday 22 December del 2022



También te puede interesar:




Powered by org-bash-blog

Written in OrgMode with Emacs and converted to HTML with Pandoc

Licencia de Creative Commons
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 4.0 Internacional.