From 2cc7896715fada725e5349ebbc45f0a078225163 Mon Sep 17 00:00:00 2001 From: Gordon Zimm Date: Thu, 24 Sep 2026 09:07:30 +0200 Subject: [PATCH] ESPO-02 sagt bei gescheiterter Installation, woran es liegt Die vier gepinnten Versionen existieren im Docker-Repo fuer noble (geprueft gegen den Packages-Index), die Ursache liegt also woanders. Statt zu raten gibt das Skript jetzt im Fehlerfall die Simulation von apt (mit der konkreten unerfuellten Abhaengigkeit), die verfuegbaren Versionen inklusive iptables und nftables, die bereits installierten Docker-Pakete und haengende Installationen aus. Ausserdem -q statt -qq, damit apt ueberhaupt etwas sagt. Co-Authored-By: Claude Opus 5 --- rmm-tasks/ESPO-02-Docker.sh | 18 +++++++++++++++--- 1 file changed, 15 insertions(+), 3 deletions(-) diff --git a/rmm-tasks/ESPO-02-Docker.sh b/rmm-tasks/ESPO-02-Docker.sh index f26145a..dcae747 100755 --- a/rmm-tasks/ESPO-02-Docker.sh +++ b/rmm-tasks/ESPO-02-Docker.sh @@ -29,9 +29,21 @@ CONF apt-get update -qq || { echo "FEHLER: apt-get update"; exit 1; } # 2. Genau diese Versionen installieren und auf Hold setzen, damit nichts unbemerkt nachzieht. -DEBIAN_FRONTEND=noninteractive apt-get install -y -qq \ - docker-ce="$DOCKER_VERSION" docker-ce-cli="$DOCKER_VERSION" containerd.io="$CONTAINERD_VERSION" \ - docker-compose-plugin="$COMPOSE_VERSION" docker-buildx-plugin="$BUILDX_VERSION" || { echo "FEHLER: Installation"; exit 1; } +# Scheitert die Installation, sagt das Skript woran - eine blosse Fehlermeldung hilft niemandem weiter. +PAKETE="docker-ce=$DOCKER_VERSION docker-ce-cli=$DOCKER_VERSION containerd.io=$CONTAINERD_VERSION" +PAKETE="$PAKETE docker-compose-plugin=$COMPOSE_VERSION docker-buildx-plugin=$BUILDX_VERSION" +if ! DEBIAN_FRONTEND=noninteractive apt-get install -y -q $PAKETE; then + echo "--- Diagnose: was apt dazu sagt" + DEBIAN_FRONTEND=noninteractive apt-get -s install $PAKETE 2>&1 | tail -n 30 + echo "--- Diagnose: was verfuegbar ist" + apt-cache policy docker-ce containerd.io docker-compose-plugin docker-buildx-plugin iptables nftables + echo "--- Diagnose: was schon installiert ist" + dpkg -l | grep -Ei 'docker|containerd|runc' || echo "keine Docker-Pakete installiert" + echo "--- Diagnose: haengende Installationen" + dpkg -l | awk '$1 !~ /^ii/ && NR > 5 {print}' || true + echo "FEHLER: Installation" + echo "ESPO02_ERGEBNIS: FEHLER"; exit 1 +fi apt-mark hold docker-ce docker-ce-cli containerd.io docker-compose-plugin docker-buildx-plugin >/dev/null # 3. Daemon-Grundlagen: Logrotation, weil der Standardtreiber nicht rotiert.