Mise à jour automatique Docker sur Synology

La mise à jour des conteneurs dans Docker Manager peut être facilement automatisée grâce à Watchtower.

Watchtower se charge de :

  • télécharger la mise à jour de l'image
  • supprimer le conteneur
  • créer le projet avec la même configuration

La mise en œuvre est très simple :

Créer un dossier pour conserver la configuration de Watchtower :

Comme on l'a vu dans mon billet précédent, on crée un dossier 'docker' si ce n'est déjà fait et on crée un sous dossier 'watchtower'.

On devrait avoir l'arborescence suivante :

/─ volume1
     └── docker
           ├─── pihole
           │      └── pihole
           │      └── dnsmasq.d
           └─── watchtower

Ce dossier ne contiendra aucune donnée externalisée. Il ne sera pas mentionné dans le fichier de configuration 'compose.yaml'. Il servira juste à stocker ce dernier pour permettre la mise à jour de Watchover.

Oui, Watchover se mettra à jour lui-même.

Télécharger l'image de Watchtower :

Dans 'Container Manager > Registre', chercher Watchtower et télécharger 'containrrr/watchtower' en choisiant la dernière version (Latest).

Créer le projet :

Compléter le fichier 'compose.yml ' en recopiant le script ci-dessous :

Script de configuration :

# Mode 2: Mise à jour des conteneurs démarrés et listés uniquement

services:
  watchtower:
    image: containrrr/watchtower:latest
    container_name: Watchtower
    environment:
      - TZ=Europe/Paris
      - WATCHTOWER_CLEANUP=true
      - WATCHTOWER_INCLUDE_STOPPED=true
      - WATCHTOWER_REVIVE_STOPPED=false
      - WATCHTOWER_SCHEDULE=0 0 2 * * *  # Tous les jours à 2h00
    command: # ci-dessous, liste des containeurs mis à jour
      - pihole
      - watchtower      
    # Pass the Docker Socket to container to manage Docker in the NAS  
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock
    restart: unless-stopped

On note ici que tous les jours à 2 h du matin, watchtower :

  • Supprime les anciennes images Docker après mise à jour (libère de l’espace disque)
  • Inclut les conteneurs arrêtés dans la vérification des mises à jour
  • Ne redémarre pas les conteneurs arrêtés, même s’ils sont mis à jour
  • On ne met à jour que deux conteneurs : pihole et watchtower lui-même

On clique ensuite sur 'suivant'.

On clique de nouveau sur 'suivant', sans cocher 'Configurer le portail Web'

Et enfin sur 'Effectué'

Le conteneur devrait apparaître dans 'Container Manager > Conteneur', le voyant au vert.

Il n'y a plus qu'à surveiller le processus.


La discussion continue ailleurs

URL de rétrolien : https://objnux.fr/index.php?trackback/134

Fil des commentaires de ce billet