.
This commit is contained in:
32
README.md
32
README.md
@@ -14,11 +14,7 @@ Push-Notifications über ntfy bei Updates, Fehlern oder Status
|
||||
Einzelne Container oder komplette Stacks gezielt vom Update ausschließen
|
||||
- 🗑️ Prune Funktion
|
||||
Entfernt nicht mehr benötigte Images/Container automatisch
|
||||
- ⚡ Digest-basierter Update-Check (kein Blind-Pull)
|
||||
Images werden nicht pauschal gepullt. Stattdessen:
|
||||
Vergleich des lokalen Image-Digests mit dem Remote-Digest
|
||||
Pull nur bei tatsächlicher Änderung
|
||||
Spart Bandbreite, Zeit und unnötige Layer-Downloads
|
||||
|
||||
|
||||
---
|
||||
|
||||
@@ -36,17 +32,25 @@ Spart Bandbreite, Zeit und unnötige Layer-Downloads
|
||||
1. Alle `*compose*.yml` Dateien werden rekursiv gefunden
|
||||
2. Verarbeitung erfolgt alphabetisch (deterministische Reihenfolge)
|
||||
3. Für jeden Stack:
|
||||
- Compose-Konfiguration wird ausgewertet (docker compose config)
|
||||
- Verwendete Images werden extrahiert
|
||||
- Compose-Konfiguration wird ausgewertet (`docker compose config`)
|
||||
- Services und deren Images werden ermittelt
|
||||
- Für jedes Image:
|
||||
- Remote-Digest wird aus der Registry abgefragt
|
||||
- Lokaler Digest wird ermittelt
|
||||
- Vergleich lokal vs. remote
|
||||
- Image wird (einmal pro Stack) gepullt (`docker pull`, nutzt Cache)
|
||||
- Lokale Image-ID wird ermittelt
|
||||
- Image-ID des vorhandenen Containers wird ermittelt (auch für gestoppte Container)
|
||||
4. Entscheidungslogik:
|
||||
- ❌ Kein Unterschied → kein Pull, kein Restart
|
||||
- ✅ Digest unterschiedlich → Image wird gepullt
|
||||
- ❌ Container existiert nicht → kein Update (nur Definition vorhanden)
|
||||
- ❌ Image-ID unverändert → kein Update
|
||||
- ✅ Image-ID hat sich geändert → Update erkannt
|
||||
5. Wenn mindestens ein Service ein Update hat:
|
||||
- kompletter Stack wird neu deployed (docker compose up -d)
|
||||
- Einzelcontainer: gezieltes Update des Services
|
||||
- Mehrere Services: kompletter Stack wird neu deployed (`docker compose up -d`)
|
||||
6. Sonderverhalten:
|
||||
- Gestoppte Container werden ebenfalls geprüft und bei Updates berücksichtigt
|
||||
- Gestoppte Container werden nach dem Update optional wieder gestoppt
|
||||
- Excluded Services werden gepullt, aber **nicht** neu gestartet.
|
||||
Verfügbare Updates werden erkannt und per NTFY gemeldet.
|
||||
- Healthchecks können optional abgewartet werden
|
||||
|
||||
---
|
||||
|
||||
@@ -176,7 +180,7 @@ NTFY_URL="https://ntfy.example.com/topic"
|
||||
NTFY_TOKEN="DEIN_TOKEN"
|
||||
|
||||
# Titel mitsenden (optional) [ String ]
|
||||
NTFY_TITLE="Docker Update ($(hostname))"
|
||||
NTFY_TITLE="Autoupdate Report ($(hostname))"
|
||||
|
||||
# Tags mitsenden (optional) [ String ]
|
||||
NTFY_TAGS="docker,update"
|
||||
|
||||
Reference in New Issue
Block a user