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.