ITDarmstadt Logo Small
Darmstadt, Germany
Folge uns auf
Die beste Lösung für Docker Container Image Updates – Watchtower von containrrr.dev

Die beste Lösung für Docker Container Image Updates Watchtower von containrrr.dev

Was ist Watchtower?

Wenn es um Docker-Container geht, ist es ebenfalls wichtig, diese stets auf dem neuesten Stand zu halten. Regelmäßig werden Sicherheitsupdates, Bugfixes und neue Funktionen veröffentlicht. Besonders in produktiven Umgebungen, in denen Docker intensiv genutzt wird, ist eine automatisierte Update-Lösung unerlässlich. Hier kommt Watchtower ins Spiel.

Durch Watchtower lässt sich ein Zeitplan festlegen, wann er nach neuen Updates für die Docker-Images suchen und diese automatisch aktualisieren soll, während gleichzeitig die veralteten Images entfernt werden. Auf diese Weise entfällt die Notwendigkeit manueller Intervention – die Images werden automatisch aktualisiert und anschließend aufgeräumt, um Speicherplatzverschwendung zu vermeiden. Alles in allem eine äußerst praktische Lösung.

Wie installieren Sie Watchtower?

Watchtower lässt sich problemlos in unsere Docker-Umgebung integrieren. Hierbei kann Watchtower ganz unkompliziert über einen Docker-Container eingebunden werden, entweder mithilfe von Docker oder Docker Compose.

In diesem Zusammenhang betrachten wir die Variante mit Docker Compose. Für die Standard-Docker-Integration können weitere Informationen auf der Projektwebsite unter https://containrrr.dev/watchtower/ gefunden werden.

Wie üblich ist es zu Beginn ratsam, Docker Compose installiert zu haben. Falls dies noch nicht erfolgt ist, empfehlen wir, unser Tutorial oder Blog zu konsultieren: „Link folgt“

Nach der Installation geht es wie folgt weiter. Erstellen Sie einen neuen Ordner, in dem Sie die Docker-Compose-Datei für Watchtower ablegen. Gebt dazu den folgenden Befehl in die Shell ein:

$ mkdir -p /opt/containers/watchtower/

Nachdem wir den Ordner erstellt haben, setzen wir die Erstellung der docker-compose.yml-Datei fort.

Führt dazu den folgenden Befehl in der Shell aus:

$ nano /opt/containers/watchtower/docker-compose.yml

Kopiert nun unser Template heraus. Zur Information: Dieses Template implementiert eine Lösung über SMTP, sodass bei jedem Zyklus von Watchtower eine Benachrichtigung erhaltet. Unabhängig davon, ob ein Update durchgeführt wurde oder lediglich eine Überprüfung stattgefunden hat. Es ist auch möglich, Benachrichtigungen über Slack, Microsoft Teams oder Gotify zu konfigurieren. Weitere Informationen dazu findet ihr hier: https://containrrr.dev/watchtower/notifications/#legacy_notifications

Bei <email-from> tragt ihr eure E-Mail-Adresse ein, von der aus die Versendung erfolgen soll. Bei <email-to> tragt ihr die E-Mail-Adresse ein, die die Benachrichtigungen erhalten soll. <email-server> wird mit eurem SMTP-Server ausgefüllt. Bei <email-user> und <password> tragt ihr die Anmeldeinformationen für den SMTP-Benutzer ein. <email-server-port> gibt den Port eures Server-SMTP an. <subjecttag> Hier könnt ihr ein Subjacttag definieren, damit bei euerer E-Mail der unterschied zu erkennen ist, welcher Watchtower diese Mail schickt. Schreibt da ambesten einfach den Servernamen rein. Bitte stellt sicher, dass immer eine verschlüsselte Übertragung erfolgt!

Die übrigen Einstellungen sollten standardmäßig passen. Watchtower ist so konfiguriert, dass er täglich um 8:00 Uhr nach neuen Updates sucht. Wenn ihr eine andere Uhrzeit einstellen möchtet, könnt ihr die Formatierung hier überprüfen: LINK. Beachtet jedoch, dass es ratsam ist, Updates durchzuführen, wenn ihr wach seid, falls etwas schief geht. Was auch noch wichtig ist, derzeitig ist die Einstellung durch WATCHTOWER_LABEL_ENABLE=true so gesetzt, dass ich bei jedem anderen Docker ein Label hinzufügen müsst, damit watchtower weiß, dass er dieses Image auch updaten soll. So würde das aussehen.

Jetzt müsst ihr nur noch den Docker Compose ausführen, und der Docker-Container sollte seine Aufgabe erfüllen. Gebt dazu folgenden Befehl ein:

$ docker-compose -f /opt/containers/watchtower/docker-compose.yml up -d

Nun sollte der Docker starten und seine Arbeit aufnehmen. Es wird empfohlen, zwischendurch die E-Mails zu überprüfen. In unserem Fall ist Watchtower einmal abgestürzt. Nach einem erneuten Pull und Neustart läuft er jedoch seit mehreren Monaten einwandfrei. Falls weitere Fragen auftreten, stehen wir als IT-Dienstleister gerne für Beratung zur Verfügung. Viel Spaß mit Watchtower.

Gruß
Samuel

DatumÄnderungenVon
27.01.2024Beitrag wurde freigegeben und veröffentlicht.Samuel Fischer
Stichplan für Changes
Leave a Reply

Your email address will not be published.Required fields are marked *