Aller au contenu

[TUTO] Mise à jour automatique des images et conteneurs Docker


.Shad.

Messages recommandés

@EVOTk

Bonjour,

Il y a 11 heures, EVOTk a dit :

Si dans les paramètres de Watchtower, pour Gotify tu indique "http://192.168.2.10:2222", quel message d'erreur obtient tu ?

Ceci :

Citation

root@MonNAS:/volume1/docker/scripts_instal/watchtower# docker logs -f watchtower
time="2020-10-18T11:22:46+02:00" level=debug
time="2020-10-18T11:22:46+02:00" level=warning msg="Using an HTTP url for Gotify is insecure"
time="2020-10-18T11:22:46+02:00" level=debug msg="Sleeping for a second to ensure the docker api client has been properly initialized."
time="2020-10-18T11:22:47+02:00" level=debug msg="Retrieving running containers"
time="2020-10-18T11:22:47+02:00" level=debug msg="There are no additional watchtower containers"
time="2020-10-18T11:22:47+02:00" level=info msg="Starting Watchtower and scheduling first run: 2020-10-19 01:30:00 +0200 CEST"
Failed to send Gotify notification:  Post "http://192.168.2.10:2222/message?token=xxxxxxxxxxxxxxxxx": dial tcp 192.168.2.10:2222: connect: connection timed out
Failed to send Gotify notification:  Post "http://192.168.2.10:2222/message?token=xxxxxxxxxxxxxxxxx": dial tcp 192.168.2.10:2222: connect: connection timed out

C'est vraiment bizarre cette affaire ???

Cordialement

oracle7😉

Lien vers le commentaire
Partager sur d’autres sites

@oracle7

Oui énormément !

As tu essayé toujours avec "http://192.168.2.10:2222",  en désactivant temporairement le pare-feu du NAS ?

Pour moi ce "connection timed out" me fait penser a un pare-feu qui bloque la connexion ! Comme si les conteneurs n'avais pas le droit de communiquer entre eux.

Modifié par Invité
Lien vers le commentaire
Partager sur d’autres sites

@EVOTk

Bonjour,

il y a 28 minutes, EVOTk a dit :

As tu essayé toujours avec "http://192.168.2.10:2222",  en désactivant temporairement le pare-feu du NAS ?

Perdu, même sans pare-feu d'activé, toujours pareil :

Citation

Failed to send Gotify notification:  Post "http://192.168.2.10:2222/message?token=xxxxxxxxxxxxxxxxx": dial tcp 192.168.2.10:2222: connect: connection timed out

Je suis complètement dépité. C'est sûr c'est un truc c.. comme la lune qui est mal configuré mais quoi ?

Heureusement que tu es là pour m'aider et me consacrer généreusement de ton temps car là je sèche complètement.😧

Cordialement

oracle7😉

Lien vers le commentaire
Partager sur d’autres sites

@.Shad.

Alors là "chapeau bas", MERCI Beaucoup voilà une excellente suggestion qui résout finalement le problème.

Juste un truc : on récupère dans le log un Warning pour la connexion http qui n'est pas sécure. J'ai essayé pour voir de mettre @IP passerelle du réseau du conteneur en https mais cela bloque comme avec le https://gotify.ndd.tld utilisé initialement.

Énorme MERCI aussi à @EVOTk pour son aide et surtout pour son temps qu'il m'a généreusement consacrer pour dépatouiller le problème avec différents tests.

Cordialement

oracle7😉

Lien vers le commentaire
Partager sur d’autres sites

@EVOTk

Bonjour,

Finalement j'ai réussi à faire fonctionner les notifications de Watchtower avec l'URL "https://gotify.ndd.tld" au lieu de "http://172.23.0.1:2222".

Dans la zone de mon DNS (DNS server sur le routeur) j'ai juste fait pointer le domaine "gotify.ndd.tld" vers l'@IP "172.23.0.1:2222" avec un enregistrement de type "A" au lieu du CNAME "gotify.ndd.tld"  qui pointait vers "ndd.tld" que j'avais initialement configuré. Ainsi cela lève aussi le problème de l'utilisation du HTTP non sécure même si on ne sort pas du réseau local.

Finalement, à la réflexion que de tracas pour une traduction DNS qui n'était pas bonne ! Heureusement que @.Shad. nous as mis sur la bonne piste sinon on y serait peut-être encore ...

Maintenant, pour aller plus loin.

  • Donc on notifie bien sur un PC local connecté à Gotify mais comment fait-on pour notifier par exemple sur un Smartphone en 4G ?
  • Il suffit que le smartphone soit aussi connecté de l'extérieur à Gotify ? (donc de l'ajouter comme client dans Gotify ?).

Cordialement

oracle7😉

 

Lien vers le commentaire
Partager sur d’autres sites

Il te suffit d'aller sur un smartphone ( android uniquement il me semble ) de télécharger l'application Gotify, et de renseigner les paramètres de ton serveur ( https://gotify.ndd.tld ainsi que ton login/pass ), qu'il faut bien sur modifier de ceux par défaut 😉

( Sur la page de gestion de Gotify tu peu gérer les users )

Si tu ne souhaite pas / peu pas utiliser l'application, il est aussi possible d'utiliser les notifications de navigateur.

Modifié par Invité
Lien vers le commentaire
Partager sur d’autres sites

  • 2 semaines après...

Bonsoir,

@EVOTk @.Shad. @oracle7

Pour info, je reçois bien maintenant les emails de watchtower sur mon email free, sans la double authentification. J'utilisais le port 465, il faut le 587 et j'ai aussi corrigé l'adresse de l'expéditeur (remplacé le nom du nas par mon adresse free).

Finalement c'était simple 🙄

- WATCHTOWER_NOTIFICATIONS_LEVEL=debug
      - WATCHTOWER_NOTIFICATIONS=email
      - WATCHTOWER_NOTIFICATION_EMAIL_FROM=user@free.fr
      - WATCHTOWER_NOTIFICATION_EMAIL_TO=user@free.fr
      - WATCHTOWER_NOTIFICATION_EMAIL_SERVER=smtp.free.fr
      - WATCHTOWER_NOTIFICATION_EMAIL_SERVER_PORT=587
      - WATCHTOWER_NOTIFICATION_EMAIL_SERVER_USER=user
      - WATCHTOWER_NOTIFICATION_EMAIL_SERVER_PASSWORD=MdP mail free
      - WATCHTOWER_NOTIFICATION_EMAIL_DELAY=2
Lien vers le commentaire
Partager sur d’autres sites

@Jeff777

Bonjour,

Content que ce la marche pour toi directement avec le paramétrage de watchtower. C'est pourtant ce que j'ai fait au début mais le le serveur SMTP d'Orange ne reconnaissait pas la connexion comme sécurisée malgré l'usage du port 587. Du coup je me suis rabattu sur "gotify" pour les notifications de màj et cela marche nickel. Ce qui est juste dommage, c'est que cela a rajouté une couche logicielle mais bon, cela marche et c'est le principal !

Cordialement

oracle7😉

Lien vers le commentaire
Partager sur d’autres sites

  • .Shad. a modifié le titre en [TUTO] Mise à jour automatique des images et conteneurs Docker

Merci pour la MAJ du tuto, je viens de découvrir "ROLLING RESTART" 😄

par contre, je pense qu'il aurait était bon de faire un nouveau tuto, et a la limite de clôturer celui-ci avec un message en haut de post avec un lien vers le nouveau tuto, car maintenant, les 4ere pages parle de ouroboros. Un qui débarque ici ne va peut etre pas tout comprendre 😄

Lien vers le commentaire
Partager sur d’autres sites

Il suffit de demander :

sudo docker create --name=Watchtower --restart=unless-stopped -e WATCHTOWER_CLEANUP=true -e WATCHTOWER_DEBUG=true -e WATCHTOWER_FULL_EXCLUDE=true -e WATCHTOWER_TIMEOUT=30s -e WATCHTOWER_SCHEDULE=0 0 5 * * 6 -e TZ=Europe/Paris -v /var/run/docker.sock:/var/run/docker.sock containrrr/watchtower
Password:
Unable to find image '0:latest' locally
Error response from daemon: pull access denied for 0, repository does not exist or may require 'docker login'


L'image est bien présente dans la liste des images de docker, évidemment, avec le tag :latest

Lien vers le commentaire
Partager sur d’autres sites

Ok je pense savoir, c'est ma faute, en fait via docker-compose il ne faut pas mettre de guillemets, mais ici quand je dis d'écrire :

WATCHTOWER_SCHEDULE=0 0 5 * * 6

Le 2ème zéro ne correspond plus aux arguments de docker create mais au nom de l'image, essaie d'ajouter des guillemets de la sorte :

WATCHTOWER_SCHEDULE="0 0 5 * * 6"

Si ça résout ton problème je m'empresserai de corriger. 😉

Lien vers le commentaire
Partager sur d’autres sites

Il faut que je revois peut-être la manière dont j'aborde la chose, mais je ne crois pas (corrigez-moi au besoin) que la variable WATCHTOWER_FULL_EXCLUDE existe.

En fait par défaut, watchtower surveille tous les conteneurs, ce qu'ils appellent full exclude dans la documentation correspond au mode dans lequel tu vas simplement ajouter le label :

com.centurylinklabs.watchtower.enable=false

dans les conteneurs que tu ne souhaites pas surveiller.

WATCHTOWER_LABEL_ENABLE est la variable à ajouter au conteneur watchtower lorsque tu souhaites que celui-ci change son comportement par défaut et ne surveille que les conteneurs possédant le label précédent fixé à true.

Ce qui ne résout pas ton problème au passage 😛 Il a l'air de penser que le dépôt (containrrr) est écrit en majuscule (ce qui n'est pas supporté par Docker), donc pour moi tu as dû oublier un "-e" quelque part devant une de tes variables d'environnement WATCHTOWER_...

Si pas, c/c ta commande, ne pratiquant plus docker en ligne de commande depuis quelques temps, il se peut qu'une coquille se soit introduite.

Modifié par .Shad.
Lien vers le commentaire
Partager sur d’autres sites

Celle qui fonctionne (avec FULL_ECLUDE) :

sudo docker create --name=Watchtower --restart=unless-stopped -e WATCHTOWER_CLEANUP=true -e WATCHTOWER_DEBUG=true -e WATCHTOWER_FULL_EXCLUDE=true -e WATCHTOWER_TIMEOUT=30s -e WATCHTOWER_SCHEDULE="0 0 5 * * 6" -e TZ=Europe/Paris -v /var/run/docker.sock:/var/run/docker.sock containrrr/watchtower

Celle qui bloquait :
sudo docker create --name=Watchtower --restart=unless-stopped --label "com.centurylinklabs.watchtower.enable=true"-e WATCHTOWER_CLEANUP=true -e WATCHTOWER_DEBUG=true -e WATCHTOWER_LABEL_ENABLE=true -e WATCHTOWER_TIMEOUT=30s -e WATCHTOWER_SCHEDULE="0 0 5 * * 6" -e TZ=Europe/Paris -v /var/run/docker.sock:/var/run/docker.sock containrrr/watchtower

Tu avais raison, il manquait un espace entre un " et un -.

Et j'ai ajouté :ro après la définition du sock, car je préfère.

Lien vers le commentaire
Partager sur d’autres sites

Je doute que ça marche en lecture seule, car watchtower est sensé recréer les conteneurs si une image a été mise à jour.
Il ne se contente donc pas de récupérer les informations du sock.

Tu peux laisser, ce sera l'occasion de voir ce que les logs diront samedi.

PS : C'est possible qu'en mode MONITOR ONLY (il vérifie juste si des images plus récentes existent) ça puisse fonctionner.

Modifié par .Shad.
Lien vers le commentaire
Partager sur d’autres sites

Rejoindre la conversation

Vous pouvez publier maintenant et vous inscrire plus tard. Si vous avez un compte, connectez-vous maintenant pour publier avec votre compte.

Invité
Répondre à ce sujet…

×   Collé en tant que texte enrichi.   Coller en tant que texte brut à la place

  Seulement 75 émoticônes maximum sont autorisées.

×   Votre lien a été automatiquement intégré.   Afficher plutôt comme un lien

×   Votre contenu précédent a été rétabli.   Vider l’éditeur

×   Vous ne pouvez pas directement coller des images. Envoyez-les depuis votre ordinateur ou insérez-les depuis une URL.

×
×
  • Créer...

Information importante

Nous avons placé des cookies sur votre appareil pour aider à améliorer ce site. Vous pouvez choisir d’ajuster vos paramètres de cookie, sinon nous supposerons que vous êtes d’accord pour continuer.