Hola Guido, Tengo corriendo docker swarm para unos microservices en mi trabajo, tenemos un CI para hacer constantemente deploys al docker...

Walter Chacón

Walter Chacón

Pregunta
studenthace 6 años

Hola Guido,

Tengo corriendo docker swarm para unos microservices en mi trabajo, tenemos un CI para hacer constantemente deploys al docker swarm. La cuestión es que el server cada día va consumiendo mas disco duro y es porque las imágenes de docker se van acumulando. La solución que hice fue crear un cron job que lo que hace es que todos los días hace un

docker system prune -f
para eliminar todas las imágenes que ya no están en uso.

Cual seria una buena practica para esto ?

4 respuestas
para escribir tu comentario
    Carlos Enrique Ramírez Flores

    Carlos Enrique Ramírez Flores

    studenthace 5 años

    Uff esto es oro escrito!! El ver el panorama de un problema y su solución por los craks! Sin duda guardaré este contenido!

    Christian Ruiz

    Christian Ruiz

    studenthace 5 años

    en windows sería así:

    docker service create --detach -e CLEAN_PERIOD=900 -e DELAY_TIME=600 --log-driver json-file --log-opt max-size=1m --log-opt max-file=2 --name cleanup --mode global --mount type=bind,source=/var/run/docker.sock,target=/var/run/docker.sock meltwater/docker-cleanup
    Guido Vilariño

    Guido Vilariño

    teacherhace 6 años

    En swarm siempre tienes que tener algún mecanismo de mantenimiento y limpieza. Yo uso meltwater/docker-cleanup corriendo como un servicio global de Swarm, lo que me garantiza que corre en todos los nodos, y delego en él la tarea de limpiar todo. Lo hago así:

    docker service create \ --detach \ -e CLEAN_PERIOD=900 \ -e DELAY_TIME=600 \ --log-driver json-file \ --log-opt max-size=1m \ --log-opt max-file=2 \ --name cleanup \ --mode global \ --mount type=bind,source=/var/run/docker.sock,target=/var/run/docker.sock \ meltwater/docker-cleanup

    Puedes aprender más de esta imagen leyendo su página en docker hub

    Manuel Salv. Lemos Foncubierta

    Manuel Salv. Lemos Foncubierta

    studenthace 6 años

    No, por que de esa manera te quedas sin backups el sistema del rollback.

    Tendrias que versionar la aplicacion y guardar solo las imagenes de dichas versiones (testeadas por supuesto).

Curso de Swarm

Curso de Swarm

Crea y gestiona múltiples máquinas en cluster con Docker Swarm. Escala tus proyectos de desarrollo y avanza en tu proceso profesional como DevOps aprendiendo a administrar con Docker Swarm.

Curso de Swarm
Curso de Swarm

Curso de Swarm

Crea y gestiona múltiples máquinas en cluster con Docker Swarm. Escala tus proyectos de desarrollo y avanza en tu proceso profesional como DevOps aprendiendo a administrar con Docker Swarm.