Über den YouTuber DB Tech komme ich gelegentlich an ganz interessante Docker Container Dienste. So auch heute.
Derzeit verwende ich die Anwendung WatchTower, um meine Container auf den aktuellen Stand zu halten. Auch wenn ich mit WatchTower in der Vergangenheit nie große Probleme hatte, ist ein kontrolliertes Update vielleicht sinnvoll.
Bei einer Anwendung hatte ich einmal das Problem, dass eine Environment Variable hinzugefügt wurde, wovon ich nichts wusste. So lief der Container nicht mehr richtig. Auch hatte ich schon Container, die nach einem Update nicht mehr sauber gestartet sind und aus blieben.
Das ist der Grund, wieso ich WatchTower erst einmal ausgestellt habe und das vorgestellte Tool von DB Tech ausprobiere.
Was kann Tugtainer?
Tugtainer ist praktisch WatchTower mit einer WebGUI. So lassen sich deine Container sauber updaten. Das Tool sucht nach Updates und aktualisiert es auf Wunsch sofort. Alternativ schaut es nur nach Updates und du aktualizierst es, wenn du dafür Zeit hast über den Button Update in Tugtainer. Auch das Entfernen von alten Images ist per Knopfdruck möglich.

Installation
Die Dokumentation ist leider nicht die beste. Es gibt viele Docker run Skripte. Um es sich ein bisschen leichter zu machen, hat DB Tech bereits ein Compose Skript bereitgestellt, das ich für mich ein bisschen angepasst habe.
Mein Setup
Ich betreibe unter Proxmox 2 LXC’s in denen ich im Heimnetzwerk Docker Container betreibe. Um nicht 2x Tugtainer installieren zu müssen, bietet das Tool eine ssh und tcp Verbindung an. Die ssh Verbindung hat leider nicht funktioniert. Somit bleiben wir bei tcp. Damit stellst du eine Verbindung zu all deinen Servern her und kannst die in der WebGUI updaten.

Installation
Tugtainer mit Socket-Proxy
Solltest du nur einen Server mit Docker haben, reicht dieses Skript. Es beinhaltet einmal die Anwendung Tugtainer und den Socket-Proxy.
services:
app:
container_name: tugtainer
image: quenary/tugtainer:latest
volumes:
- tugtainer_data:/tugtainer
- /var/run/docker.sock:/var/run/docker.sock
- /etc/localtime:/etc/localtime:z,ro
- /etc/timezone:/etc/timezone:z,ro
restart: unless-stopped
networks:
- tugtainer_net
ports:
- 9412:80
socket-proxy:
image: lscr.io/linuxserver/socket-proxy:latest
container_name: tugtainer-socket-proxy
environment:
CONTAINERS: 1
EVENTS: 1
IMAGES: 1
INFO: 1
LOG_LEVEL: warning
PING: 1
NETWORKS: 1
POST: 1
TZ: Europe/Berlin
VERSION: 1
volumes:
- /var/run/docker.sock:/var/run/docker.sock:ro
restart: unless-stopped
read_only: true
tmpfs:
- /run
networks:
- tugtainer_net
volumes:
tugtainer_data: null
networks:
tugtainer_net:
driver: bridge
ipam:
config:
- subnet: 1.30.0.0/16
Socket-Proxy für den 2. Docker Server
Solltest du mehrere Server haben, auf denen Docker läuft, kannst du Tugtainer mit diesen verbinden (tcp://DEINE-IP:2375).
services:
socket-proxy:
image: lscr.io/linuxserver/socket-proxy:latest
container_name: tugtainer-socket-proxy
environment:
CONTAINERS: 1
EVENTS: 1
IMAGES: 1
INFO: 1
LOG_LEVEL: warning
PING: 1
NETWORKS: 1
POST: 1
TZ: Europe/Berlin
VERSION: 1
volumes:
- /var/run/docker.sock:/var/run/docker.sock:ro
restart: unless-stopped
read_only: true
tmpfs:
- /run
networks:
- tugtainer_net
ports:
- 2375:2375
networks:
tugtainer_net:
driver: bridge
ipam:
config:
- subnet: 12.30.0.0/16
Das Komplette Video:
https://youtu.be/qmENyuVxW4g?si=dwi8ACxUelVyeL3x
Quellen:
https://github.com/Quenary/tugtainer






Schreibe einen Kommentar