Watch Tower : Auto update docker images

Watch Tower : Auto update docker images

Table of Contents

Présentation

Watch Tower permet de mettre à jour les images docker utilisées de façon automatique. Il va permettre de télécharger la nouvelle image, supprimer proprement le conteneur l'utilisant et le relancer avec les mêmes options. Par défaut, cela utilise le Docker Hub, mais il est possible de paramétrer un registry privé en spécifiant des credentials.

La documentation complète peut être accessible ici : https://containrrr.dev/watchtower/

Installation

L'installation est très simple car Watch Tower va tourner lui-même en conteneur.

Je vais utiliser un fichier docker-compose.yml pour exécuter l'application :

version: '3.8'
services:
  watchtower:
    image: containrrr/watchtower:latest
    container_name: watchtower
    restart: unless-stopped
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock
    command: --schedule "0 0 4 * * *" --cleanup
  • docker.sock : Indispensable pour avoir accès au socket docker de l'hôte dans le conteneur afin de surveiller tous les autres conteneurs.
  • schedule : Permet de préciser quand vérifier les mises à jour sous un format à 6 colonnes (contrairement à crontab). La 1ère colonne correspond aux secondes. Ici, 4h tous les jours.
  • cleanup : Permet de supprimer les anciennes images docker.

Par défaut toutes les images de tous les conteneurs sont surveillées. Il est possible d'affiner ce comportement.

D'autres options sont disponibles (Se référer à la documentation précisée en introduction).

Exécution

Lancer simplement le docker-compose.yml :

docker-compose up -d
Les commentaires sont fermés.