Fix: Registry-Login über Host-Port 5000

- Testet jetzt zuerst direkten Host-Zugriff über Port 5000 (HTTP)
- Findet automatisch Gateway-IP des Docker-Netzwerks
- Testet host.docker.internal für Docker Host
- Da docker-dind in isoliertem Netzwerk läuft, muss Host direkt erreicht werden
This commit is contained in:
2025-10-31 17:49:53 +01:00
parent df650d8abb
commit b60bbb7344

View File

@@ -220,7 +220,24 @@ jobs:
echo ""
echo "🔍 Teste Registry: $TEST_URL"
# Teste HTTPS
# Wenn URL bereits Port enthält, teste direkt
if [[ "$TEST_URL" == *":5000" ]]; then
# Direkter HTTP-Zugriff (Port bereits in URL)
if curl -s -f -o /dev/null "http://$TEST_URL/v2/" 2>/dev/null; then
echo "✅ Registry erreichbar über HTTP: http://$TEST_URL"
# Versuche Login mit HTTP (ohne :5000 nochmal hinzuzufügen)
if echo "$REGISTRY_PASSWORD" | docker login "$TEST_URL" -u "$REGISTRY_USER" --password-stdin 2>&1; then
echo "✅ Erfolgreich bei Registry angemeldet: $TEST_URL"
REGISTRY_URL="$TEST_URL"
LOGIN_SUCCESS=true
break
else
echo "⚠️ Login fehlgeschlagen für $TEST_URL, versuche nächste URL..."
fi
fi
else
# Teste HTTPS zuerst
if curl -k -s -f -o /dev/null "https://$TEST_URL/v2/" 2>/dev/null; then
echo "✅ Registry erreichbar über HTTPS: https://$TEST_URL"
@@ -231,7 +248,7 @@ jobs:
LOGIN_SUCCESS=true
break
else
echo "⚠️ Login fehlgeschlagen für $TEST_URL, versuche nächste URL..."
echo "⚠️ Login fehlgeschlagen für $TEST_URL, versuche HTTP..."
fi
fi
@@ -249,6 +266,7 @@ jobs:
echo "⚠️ Login fehlgeschlagen für $TEST_URL:5000, versuche nächste URL..."
fi
fi
fi
done
if [ "$LOGIN_SUCCESS" = false ]; then