This site uses cookies! Learn More

Ce site utilise des cookies !

En continuant à utiliser ce site, vous vous engagez à nous permettre de stocker des cookies sur votre ordinateur.

 

Si nous utilisons des cookies et retenons des données anonymes, c’est pour nous aider à mieux gérer notre mesure d’audience, aider nos partenaires commerciaux à nous rémunérer et nos partenaires publicitaires à proposer des annonces qui vous correspondent.

 

Grâce à ces cookies, le forum est en mesure de savoir qui écrit un message et utile pour le système d'authentification.

 

En cliquant sur « J'accepte », vous acceptez l'utilisation par NAS-Forum de cookies publicitaires et de mesure d'audience fine.

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


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 à poster
Partager sur d’autres sites
  • Réponses 205
  • Created
  • Dernière réponse

Top Posters In This Topic

Top Posters In This Topic

Popular Posts

Et avec l'IP passerelle plutôt que l'IP locale ?

Refonte du tutoriel pour containrrr/watchtower, avec quelques explications supplémentaires. 😉 

Je clique sur le nom d'un conteneur, et cela ce trouve en haut de page   D'accord alors je n'est pas vraiment compris la question, si tu utilise la fonction compose de portai

Posted Images

@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 EVOTk
Lien à poster
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 à poster
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 à poster
Partager sur d’autres sites

Super ! Etrange que cela est besoin d'etre renseigné comme ceci chez toi et pas chez moi !

Pour ton https://gotify.ndd.tld , je suppose qu'il ne te reste qu'a modifier le reverse pour qu'il ne pointe plus vers http://localhost:2222 mais vers http://adresse_de_la_passerelle:2222 et cela devrai fonctionner !

Lien à poster
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 à poster
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 EVOTk
Lien à poster
Partager sur d’autres sites
  • 2 weeks later...

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 à poster
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 à poster
Partager sur d’autres sites
  • .Shad. changed the title to [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 à poster
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 à poster
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 à poster
Partager sur d’autres sites

Ça résoud.

Mais il faut ensuite le démarrer (le container).

Et si je met un label (et l'option ENABLE), comme toi, j'ai un autre message :
"invalid reference format: repository name must be lowercase"

 

Lien à poster
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 à poster
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 à poster
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 à poster
Partager sur d’autres sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

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.