Fix: Workflow Registry-Login und Buildx-Installation

- Registry-Login testet jetzt mehrere URLs (externe Domain, IP, HTTP Port 5000)
- Automatische Erkennung der funktionierenden Registry-URL
- Verbessertes Error-Handling und Debugging-Ausgaben
- Buildx auf v0.29.1 aktualisiert und global installiert
- Shell-Angaben für alle Steps korrigiert (sh für ersten, bash für weitere)
- Registry-URL wird als Step-Output gespeichert und im Build verwendet
This commit is contained in:
2025-10-31 17:46:25 +01:00
parent dfb1d9bd5d
commit df650d8abb
2 changed files with 151 additions and 18 deletions

View File

@@ -10,21 +10,33 @@ RUN apk add --no-cache \
openssh-client \
ca-certificates
# Installiere Docker Buildx
RUN mkdir -p /root/.docker/cli-plugins && \
# Installiere Docker Buildx (global für alle User)
RUN mkdir -p /usr/local/lib/docker/cli-plugins && \
ARCH=$(uname -m) && \
if [ "$ARCH" = "x86_64" ]; then ARCH="amd64"; fi && \
curl -L "https://github.com/docker/buildx/releases/download/v0.13.2/buildx-v0.13.2.linux-${ARCH}" \
-o /root/.docker/cli-plugins/docker-buildx && \
chmod +x /root/.docker/cli-plugins/docker-buildx
if [ "$ARCH" = "x86_64" ]; then ARCH="amd64"; elif [ "$ARCH" = "aarch64" ]; then ARCH="arm64"; fi && \
BUILDX_VERSION="v0.29.1" && \
curl -fL "https://github.com/docker/buildx/releases/download/${BUILDX_VERSION}/buildx-${BUILDX_VERSION}.linux-${ARCH}" \
-o /usr/local/lib/docker/cli-plugins/docker-buildx && \
chmod +x /usr/local/lib/docker/cli-plugins/docker-buildx && \
# Verifiziere Download (sollte mindestens 1MB sein)
test -f /usr/local/lib/docker/cli-plugins/docker-buildx && \
test $(stat -c%s /usr/local/lib/docker/cli-plugins/docker-buildx) -gt 1000000 && \
# Auch für root installieren (als Fallback)
mkdir -p /root/.docker/cli-plugins && \
cp /usr/local/lib/docker/cli-plugins/docker-buildx /root/.docker/cli-plugins/docker-buildx
# Verifiziere Installation (Buildx wird beim ersten Aufruf initialisiert, daher nur Basis-Checks)
# Verifiziere Installation
RUN docker --version && \
git --version && \
bash --version
bash --version && \
docker buildx version
# Arbeitsverzeichnis
WORKDIR /workspace
# Standard-User für CI (UID/GID 1000)
RUN addgroup -g 1000 ci && adduser -u 1000 -G ci -D ci
RUN addgroup -g 1000 ci && adduser -u 1000 -G ci -D ci && \
# Installiere Buildx auch für ci-User
mkdir -p /home/ci/.docker/cli-plugins && \
cp /usr/local/lib/docker/cli-plugins/docker-buildx /home/ci/.docker/cli-plugins/docker-buildx && \
chown -R ci:ci /home/ci/.docker