He creado un repositorio de Github y un repositorio de Docker. Ambos funcionan muy bien juntos: cuando introduzco una nueva versión de Dockerfile en Github, se crea automáticamente una nueva imagen dentro del repositorio de Docker.
Ahora, me gustaría que mis contenedores en ejecución se actualicen automáticamente cuando la imagen base se (re) construya.
¿Cómo puedo lograrlo usando Docker repos webhooks?
deployment
docker
docker-registry
PJ Bergeron
fuente
fuente
Respuestas:
El equipo de Century Link Labs ha desarrollado 2 nuevas herramientas de código abierto que pueden usar enlaces web para actualizar los contenedores en ejecución.
Su primera aplicación es Zodiac que utiliza un modelo de implementación "push". Es una herramienta liviana construida sobre Docker Compose , para una fácil implementación y reversión de aplicaciones dockerizadas. Mantiene un historial de todas las implementaciones que también le permite retroceder a una implementación anterior.
Su segunda aplicación, Watchtower, utiliza un modelo de implementación "pull". Este modelo permite que los contenedores Docker que residen detrás de un firewall detecten y extraigan cambios de manera más segura sin exponer un puerto externo.
La Watchtower sabe cómo reiniciar correctamente un conjunto de contenedores vinculados. Si se detecta una actualización para una de las dependencias en un grupo de contenedores vinculados, Watchtower se detendrá e iniciará todos los contenedores en el orden correcto para que la aplicación vuelva a funcionar correctamente.
No tengo afiliación con Century Link Labs.
Otra aplicación más simple que es posible que desee echar un vistazo es Docker Puller .
fuente
También hay un más reciente docker-image-puller
Está conectado directamente al zócalo de su Docker y utiliza la API de Docker para actualizar sus contenedores en ejecución que utilizan la imagen que especifique en el webhook. Es bastante simple, tal vez se puedan agregar más opciones en el futuro
fuente
Encontré esto, pero aún no lo he intentado:
https://medium.com/@iaincollins/docker-swarm-automated-deployment-cb477767dfcf este es un artículo sobre el uso de webhook para implementar contenedores con Docker Hub.
Básicamente, le dice que podría usar algún tipo de herramienta (consulte el enlace a continuación) para manejar el webhook en su "máquina" acoplable. https://github.com/iaincollins/docker-deploy-webhook
fuente