From b5fcd0e103b03bc71a98f48ba4da55f88ed90fa9 Mon Sep 17 00:00:00 2001 From: Thorsten Date: Tue, 31 Mar 2026 14:10:04 +0200 Subject: [PATCH] . --- README.md | 32 +++--- config.conf | 2 +- composeupdater.png => img/composeupdater.png | Bin img/ntfy.png | Bin 0 -> 114949 bytes shell_docker_compose_update.sh | 100 ++++++------------- 5 files changed, 51 insertions(+), 83 deletions(-) rename composeupdater.png => img/composeupdater.png (100%) create mode 100644 img/ntfy.png diff --git a/README.md b/README.md index 0866b84..dc98c0d 100644 --- a/README.md +++ b/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" diff --git a/config.conf b/config.conf index a1bf37b..71d75d4 100644 --- a/config.conf +++ b/config.conf @@ -81,7 +81,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" diff --git a/composeupdater.png b/img/composeupdater.png similarity index 100% rename from composeupdater.png rename to img/composeupdater.png diff --git a/img/ntfy.png b/img/ntfy.png new file mode 100644 index 0000000000000000000000000000000000000000..09e51910ef2f7aee9d43ab64721ff6ee604a5ba2 GIT binary patch literal 114949 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 literal 0 HcmV?d00001 diff --git a/shell_docker_compose_update.sh b/shell_docker_compose_update.sh index cddb1a7..d51ee36 100644 --- a/shell_docker_compose_update.sh +++ b/shell_docker_compose_update.sh @@ -68,7 +68,7 @@ get_image() { get_container_image_id() { local svc="$1" local cid - cid=$(docker compose ps -q "$svc" 2>/dev/null || true) + cid=$(docker compose ps -aq "$svc" | head -n1) [ -z "$cid" ] && echo "" && return docker inspect -f '{{.Image}}' "$cid" 2>/dev/null || echo "" } @@ -81,7 +81,7 @@ get_local_image_id() { is_running() { local svc="$1" local cid - cid=$(docker compose ps -q "$svc" 2>/dev/null || true) + cid=$(docker compose ps -aq "$svc" 2>/dev/null || true) [ -z "$cid" ] && return 1 docker inspect -f '{{.State.Running}}' "$cid" 2>/dev/null | grep -q true } @@ -137,9 +137,9 @@ wait_for_healthy() { # 👉 Containerliste bestimmen if [ ${#services[@]} -gt 0 ]; then - mapfile -t cids < <(docker compose ps -q "${services[@]}") + mapfile -t cids < <(docker compose ps -aq "${services[@]}") else - mapfile -t cids < <(docker compose ps -q) + mapfile -t cids < <(docker compose ps -aq) fi # 👉 keine Container → nichts zu tun @@ -197,21 +197,6 @@ wait_for_healthy() { done } -get_remote_digest() { - local image="$1" - - docker manifest inspect "$image" 2>/dev/null \ - | grep -m1 '"digest"' \ - | awk -F '"' '{print $4}' \ - || true -} - -get_local_digest() { - local image="$1" - docker inspect --format='{{index .RepoDigests 0}}' "$image" 2>/dev/null \ - | cut -d'@' -f2 -} - pull_with_retry() { local image="$1" @@ -233,8 +218,9 @@ pull_with_retry() { return 1 } -rate_limit() { - sleep 0.2 +container_exists() { + local svc="$1" + docker compose ps -aq "$svc" 2>/dev/null | grep -q . } @@ -255,8 +241,11 @@ stack_tree=() cd "$PATH_COMPOSE_DIR" + while IFS= read -r -d '' file; do + declare -A pulled_images + dir=$(dirname "$file") stack=$(basename "$dir") @@ -325,58 +314,33 @@ while IFS= read -r -d '' file; do fi # ============================= - # Digest Check + # Pull + Vergleich (NEU) # ============================= - local_digest=$(get_local_digest "$image") - - if [ -z "$local_digest" ]; then - update_needed=true - - elif [ -n "$before_id" ]; then - # 👉 nur bei laufenden Containern - remote_digest=$(get_remote_digest "$image" || true) - rate_limit - - if [ -z "$remote_digest" ]; then - log DEBUG " ⚠️ kein Remote Digest → fallback auf pull" - update_needed=true - elif [ "$remote_digest" != "$local_digest" ]; then - update_needed=true - else - update_needed=false - fi - - else - # 👉 gestoppter Container → KEIN manifest check - update_needed=true - fi - - # ============================= - # Pull + echte Prüfung - # ============================= - - if [ "$update_needed" = true ]; then + # 👉 Pull (nutzt Cache → schnell wenn nichts neu) + if [ -z "${pulled_images[$image]:-}" ]; then if ! pull_with_retry "$image"; then log ERROR " ❌ Pull fehlgeschlagen" error_flag=true continue fi + pulled_images[$image]=1 + else + log DEBUG " ⏩ Pull übersprungen (bereits gemacht)" + fi - after_id=$(get_local_image_id "$image") + after_id=$(get_local_image_id "$image") - # 👉 Nur vergleichen wenn Container existiert - if [ -n "$before_id" ]; then - if [ "$before_id" != "$after_id" ]; then - update_needed=true - else - update_needed=false - fi - else - # 👉 Kein Container → kein echtes "Update" - update_needed=false - fi + if ! container_exists "$svc"; then + # 👉 Container existiert nicht → KEIN Update + update_needed=false + + elif [ "$before_id" != "$after_id" ]; then + update_needed=true + + else + update_needed=false fi # ============================= @@ -536,17 +500,17 @@ if [ "$NTFY_ENABLED" = true ]; then msg="" if [ ${#stack_tree[@]} -gt 0 ]; then - msg+=$'\n🔄 Stack Updates\n' + msg+=$'#### 🔄 Stack Updates\n' for stack in $(printf "%s\n" "${!stack_tree[@]}" | sort); do msg+=$'\n'"$stack" msg+="${stack_tree[$stack]}" - msg+=$'\n' # Leerzeile nach jedem Stack + # msg+=$'\n' # Leerzeile nach jedem Stack done fi if [ ${#notify_excluded_updates[@]} -gt 0 ]; then - msg+=$'\n\n⏭️ Excluded (Update verfügbar)' + msg+=$'\n\n#### ⏭️ Excluded (Update verfügbar)' for s in "${notify_excluded_updates[@]}"; do msg+=$'\n - '"$s" done @@ -554,11 +518,11 @@ if [ "$NTFY_ENABLED" = true ]; then if [ ${#stack_tree[@]} -eq 0 ] && \ [ ${#notify_excluded_updates[@]} -eq 0 ]; then - msg+=$'\n\n✔️ Alles aktuell' + msg+=$'\n\n#### ✔️ Alles aktuell' fi if [ "$freed_space" != "0" ]; then - msg+=$'\n\n🧹 Cleanup: '"${freed_space} MB freigegeben" + msg+=$'\n\n#### 🧹 Cleanup: '"${freed_space} MB freigegeben" fi if [ "$error_flag" = true ]; then