Illustration of the Docker logo, featuring a stylized whale carrying containers and a NAS server.
Agence web » Actualités du digital » Optimisez vos mises à jour Docker avec cette astuce

Optimisez vos mises à jour Docker avec cette astuce

Résumé

  • Les conteneurs Docker ne se mettent pas à jour automatiquement.

  • Watchtower surveille les conteneurs Docker, vérifiant les mises à jour en fonction d'un calendrier spécifié.

  • Avec Watchtower, vous pouvez soit mettre à jour automatiquement votre conteneur ou simplement recevoir des notifications de mises à jour.

J'adore Docker, mais je déteste que les conteneurs doivent être mis à jour manuellement. J'ai donc trouvé une solution: Watchtower. Ce simple conteneur Docker a complètement rationalisé ma configuration, et je ne déploierai pas un autre serveur Docker sans lui.

Les conteneurs Docker ne se mettent pas à jour

J'adore tout sur les conteneurs Docker, sauf qu'il n'y a pas de méthode de mise à jour simple dans la plupart des gestionnaires Docker. Bien que Unaid fournit un excellent système de mise à jour Docker, vous devez généralement recréer le conteneur pour le mettre à jour, même avec quelque chose comme Portainer.

Aucune donnée n'est perdue lors de cette récréation, et c'est honnêtement une chose simple à faire. Cependant, savoir si un conteneur a une mise à jour, plus la mise à jour de nombreux conteneurs à la fois peut être un peu lourd.

En rapport

Docker pour les débutants: tout ce que vous devez savoir

Apprenez à utiliser cet outil de développement incroyablement populaire.

Honnêtement, j'ai été un peu surpris par cela. Jusqu'au mois dernier, j'ai toujours utilisé Unded pour gérer mes conteneurs Docker. Undaid a une excellente interface pour savoir si un conteneur a une mise à jour et pour appliquer cette mise à jour. En fait, dans Unded, vous pouvez cliquer sur les conteneurs individuels pour les mettre à jour, ou cliquer sur un bouton et les mettre à jour tous en même temps.

Mais, en déménageant à Portainener, j'ai réalisé qu'il s'agissait d'une fonctionnalité non comptabilisée, pas quelque chose que Docker lui-même fait. À ce stade, j'ai décidé que je devais trouver une meilleure façon de gérer la mise à jour de mes conteneurs Docker. Celui qui était plus automatisé et sans main que de recréer manuellement chaque conteneur.

Watchtower garde un œil sur les mises à jour Docker

Lorsque j'ai décidé de trouver un système de mise à jour automatisé pour Docker, Watchtower a été le premier logiciel que j'ai rencontré. C'est aussi là que la recherche s'est arrêtée, car elle fait tout ce dont j'ai besoin et plus.

Watchtower est un conteneur Docker qui s'exécute dans votre configuration Docker. En se connectant à la prise Docker, il peut voir quels conteneurs vous avez et il sait quoi faire à partir de là. Le déploiement de Watchtower est extrêmement simple.

Sans arguments supplémentaires, le conteneur Watchtower s'exécutera une fois puis s'arrête. Cependant, il existe de nombreuses variables d'environnement qui peuvent être définies. L'un des principaux que j'utilise est Watchtower_Disable_Containers, auquel vous alimentez le nom du conteneur comme variable. Cela dit essentiellement à Watchtower d'ignorer ces conteneurs.

Si vous avez des conteneurs critiques de mission que vous ne souhaitez pas mettre automatiquement à jour et potentiellement à la rupture, vous voudrez vous assurer qu'ils sont dans la variable Watchtower_Disable_Containers.

En rapport

Qu'est-ce qu'un travail cron et comment les utilisez-vous?

L'utilitaire CRON est utilisé pour exécuter des scripts et des commandes à intervalles réguliers, et à des moments et des dates précis.

J'ai également les variables environnementales Watchtower_Schedule et TZ pour gérer la planification lorsque Watchtower s'exécute. Il utilise Chron Scheduling, et j'ai le mien pour s'exécuter tôt le matin quotidiennement, alors que personne n'utilise généralement l'un des services ou des sites Web que j'héberge dans ma configuration Docker. Cependant, vous pouvez le régler pour vérifier une fois par jour, plusieurs fois par jour, une fois par semaine, une fois par mois. C'est vraiment à vous.

Mise à jour automatique ou simplement en informer, le choix est le vôtre

Watchtower est assez configurable. Non seulement vous pouvez lui dire quand fonctionner et quels conteneurs ignorer, mais vous pouvez également déterminer s'il met à jour ces conteneurs ou non.

Watchtower peut s'intégrer à Discord et Slack, vous permettant de configurer des notifications pour ce qu'elle fait. Cela signifie que vous pouvez vous dire simplement quand un conteneur a une mise à jour, mais ne rien faire avec. D'un autre côté, vous pourriez le faire faire la mise à jour complète des conteneurs et vous dire quand c'est fait. Ou, soyez comme moi, et faites-le mettre à jour mais ne sachez jamais ce qui se passe à moins que vous ne vérifiiez les journaux.

Alors, devriez-vous le définir sur Auto-Update ou simplement en informer? Eh bien, j'ai la plupart de mes conteneurs automatiquement à la mise à jour: ceux que je ne prévois pas la rupture, et qui sont relativement faciles à réparer s'ils le font. D'autres services pourraient se briser catastrophiquement avec une mise à jour automatique.

Vous devez déterminer le niveau d'automatisation que vous souhaitez utiliser ici. La grande chose avec Watchtower est qu'elle est ultra-configurable, cependant, vous pouvez donc décider au cas par cas si un conteneur est automatiquement manipulé.

En rapport

Vous devriez apprendre Docker avant d'acheter un NAS (voici comment)

Docker peut transformer votre NAS en votre propre cloud qui peut héberger vos propres applications et automatiser votre maison.

Watchtower vous permet de choisir les conteneurs avec lesquels il fonctionne via la variable Watchtower_Disable_Containers, ou via des étiquettes. Avec les étiquettes, vous pouvez transmettre une variable au conteneur lui-même, soit l'activer ou le désactiver pour Watchtower. Bien que je n'aie pas encore utilisé cette fonction de Watchtower, il est super de voir que vous pouvez définir les drapeaux dans vos autres conteneurs au lieu d'avoir à le régler dans Watchtower. Ensuite, vous pouvez simplement changer ce drapeau à l'avenir si vous souhaitez modifier la fonction de Watchtower.

★★★★★