Le besoin #
Maintenir les services Docker à jour automatiquement pour bénéficier des derniers correctifs de sécurité sans intervention manuelle quotidienne.
Installation & Configuration #
J’ai utilisé Docker Compose pour déployer Watchtower. Voici les points clés de ma configuration :
- Montage du socket Docker : Indispensable pour que Watchtower puisse surveiller et redémarrer les autres conteneurs.
- Intervalle : Une vérification toutes les 24h est suffisante pour mon usage.
- Nettoyage : Activation du nettoyage automatique pour éviter l’accumulation d’images obsolètes.
- Redémarrage forcé : Garantit que les conteneurs sont redémarrés après une mise à jour, assurant ainsi l’application des nouvelles versions.
- Limitation de ressources : Bien que Watchtower soit très léger, je lui ai alloué une limite de mémoire par précaution.
services:
watchtower:
image: containrrr/watchtower:latest
container_name: watchtower
restart: unless-stopped
volumes:
# Indispensable pour que Watchtower voie tous les conteneurs du serveur
- /var/run/docker.sock:/var/run/docker.sock
environment:
# Intervalle de scan : 86400 secondes (24 heures)
- WATCHTOWER_POLL_INTERVAL=86400
# Nettoyage automatique des images orphelines (gain de place sur le serveur)
- WATCHTOWER_CLEANUP=true
# Force le redémarrage des conteneurs après mise à jour
- WATCHTOWER_INCLUDE_RESTARTING=true
deploy:
resources:
limits:
memory: 128MRetour d’expérience #
Depuis la mise en place de Watchtower, mes conteneurs sont automatiquement mis à jour sans aucune intervention de ma part.
Cela m’a permis de renforcer la sécurité de mon infrastructure tout en optimisant l’espace disque.
Conclusion #
C’est un outil que je recommande pour simplifier la maintenance de votre stack Docker.
Vous pouvez consulter la documentation officielle pour découvrir plus de détails et d’options de configuration.
Retrouvez également le projet sur GitHub : Watchtower GitHub