From db3dfa6b4eb6b85ae03d12b256446d9719e53573 Mon Sep 17 00:00:00 2001 From: Johannes Date: Sat, 11 Apr 2026 19:55:18 +0000 Subject: [PATCH] swicht from debian-slim to alpine because of CI Vulnerabilities --- Dockerfile | 21 +++++++++------------ 1 file changed, 9 insertions(+), 12 deletions(-) diff --git a/Dockerfile b/Dockerfile index e705c87..0f2a456 100644 --- a/Dockerfile +++ b/Dockerfile @@ -3,12 +3,10 @@ # ============================================ # Build Stage # ============================================ -FROM debian:bookworm-slim AS build +FROM alpine:3.20 AS build -# Nur die benötigten Pakete installieren und danach Metadaten löschen die man nur für die INstallation braucht -RUN apt-get update \ - && apt-get install -y --no-install-recommends gcc libc6-dev \ - && rm -rf /var/lib/apt/lists/* +# Nur die benötigten Pakete installieren mit --no-chache +RUN apk add --no-cache gcc musl-dev # WORKDIR setzen WORKDIR /app @@ -22,18 +20,16 @@ RUN gcc -o deployment deployment.c # ============================================ # Runtime Stage # ============================================ -FROM debian:bookworm-slim AS runtime +FROM alpine:3.20 AS runtime # Curl für den HEALTHCHECK -RUN apt-get update \ - && apt-get install -y --no-install-recommends curl \ - && rm -rf /var/lib/apt/lists/* +RUN apk add --no-cache curl # Das output directory erstellen RUN mkdir -p /output # User ohne Root-Rechte erstellen -RUN useradd -m app +RUN adduser -D app # Der User app braucht die Rechte für den Ordner output RUN chown -R app:app /output @@ -51,10 +47,11 @@ VOLUME ["/output"] USER app # Programm starten -ENTRYPOINT ["/bin/bash", "-c"] +ENTRYPOINT ["/bin/sh", "-c"] CMD ["./deployment 10 > /output/output.txt && tail -f /output/output.txt"] # prüfen ob output.txt existiert und aktualisiert wird HEALTHCHECK --interval=30s --timeout=10s --start-period=5s --retries=3 \ - CMD test -f /output/output.txt && test $(find /output/output.txt -mmin -1) && echo "healthy" || exit 1 + CMD [ -f /output/output.txt ] && \ + [ $(find /output/output.txt -mmin -1 | wc -l) -gt 0 ] || exit 1