Automatiser La Mise A Jour Des Images Docker Grace A Watchtower
Cet Article a été vu ... fois
Pour commencer, l’utilisation de docker est d’une simplicité déconcertante, tellement déconcertante que l’on a tendance à ouvrir beaucoup de container à l’intérieur de notre propre système. Par exemple sur le NAS du domicile j’ai 12 containers qui tournent en même temps et tout ça n’utilise que 10% de mes ressources processeurs/mémoires. Alors utiliser docker c’est bien mais automatiser la mise à jour des images docker avec watchtower c’est primoridal pour la sécurité. C’est pourquoi j’ai installé l’image watchtower « tour de guet » en bon français.
À quoi sert Watchtower
Alors que fait cette image. Avec watchtower, vous pouvez mettre à jour la version en cours d’exécution de votre application conteneurisée simplement en poussant une nouvelle image vers le Docker Hub ou votre propre registre d’images. Watchtower supprimera votre ancienne image, fermera gracieusement votre conteneur existant et le redémarrera avec les mêmes options que celles utilisées lors de son déploiement initial. Exécutez le conteneur Watchtower avec la commande suivante:
watchtower fermera proprement votre container existant en enregistrant les options et arguments de son déploiement initial.
Ensuite tour de guet téléchargeras l’application nouvelle image , une fois la nouvelle image installée, l’ancienne image pourras être supprimée automatiquement.
pour finir watchtower ouvrira le container avec toutes ses options initialement déployées.
parmi les options que je trouve les plus intéressantes de watchtower on peut:
- choisir de supprimer l’ancienne image pratique car le stockage des images peut être conséquent
- être notifié par email par exemple lors d’une mise à jour
- lancer une tâche Caron la nuit par exemple de vérification pour ne pas surcharger ses ressources en pleins jours où bloquer l’accès à un de ses sites WordPress par exemple.
- choisir de ne mettre à jour que certaines images
Documentation officielle de Watchtower
Ci joint la documentation officielle de Watchtower
Documentation officielle Watchtower
Liste des Arguments disponibles
Arguments Watchtower
Le code docker ci-dessous avec l’argument --schedule "0 2 * * *
nous permet de programmer la recherche de mise à jour des images à 2h00 du matin afin de ne pas stopper les services des images en cours le jour.
Générateur d’horaire Cron
Ce qui pourrait être dérangeant si nous avons un site wordpress par exemple. L’argument --cleanup
nous permet d’effacer l’ancienne image après une mise à jour réussi. Afin de ne pas saturer notre disque dur inutilement.
Si On veut faire les mises à jours de certaines images il suffit de mettre le nom des images containers concernées. Ainsi dans l’exemple ci-dessous seul les images nommé Jeedom et Homeassistant seront mises à jour.
Pour Conclure j’utilise personnellement Watchtower depuis de nombreux mois sur une douzaine de containers et je n’ai jamais rencontré de problèmes suite à une mise à jour. C’est un indispensable de la virtualisation Docker. Beaucoup d’images ont validés leurs compatibilités, comme celle générées par linuxserver.io
commentaires