From 55dd52565cfcf1c0a92ae1e0b4e4b4af700083ac Mon Sep 17 00:00:00 2001 From: LukasJuraczka Date: Fri, 30 Jan 2026 13:29:16 +0100 Subject: [PATCH] =?UTF-8?q?Dockerfile=20=C3=BCberarbietet?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Dockerfile | 37 ++++++++++++++++++++++++------------- 1 file changed, 24 insertions(+), 13 deletions(-) diff --git a/Dockerfile b/Dockerfile index cd83026..21ee12c 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,24 +1,35 @@ +# --- Build Stage --- FROM maven:3.9-eclipse-temurin-21 AS build -COPY . /productdefinitions -COPY pom.xml /productdefinitions -COPY server-app/pom.xml /productdefinitions/server-app WORKDIR /productdefinitions +# 1. Abhängigkeiten (External Lib) klonen und installieren RUN git clone -b feature/Produkte --single-branch https://bitbucket.org/omds/omdsservicedefinitions.git /tmp/lib \ - && cd /tmp/lib/OMDSServiceDefinition \ - && mvn clean install -DskipTests + && cd /tmp/lib/OMDSServiceDefinition \ + && mvn clean install -DskipTests +# 2. Projekt-Struktur kopieren +# Zuerst nur die poms, um den Cache besser zu nutzen (optional, aber empfohlen) +COPY pom.xml . +COPY server-app/pom.xml server-app/ +# (Andere Modul-poms hier auch kopieren, falls vorhanden) + +# 3. Den Rest kopieren COPY . . -RUN mvn install -N -RUN mvn -pl server-app -am clean install +# 4. Bauen: Wir installieren das Root-Projekt und bauen dann gezielt das Modul +RUN mvn clean install -DskipTests -pl server-app -am +# --- Run Stage --- FROM eclipse-temurin:21-jre-alpine -WORKDIR /productdefinitions -RUN ls -la -COPY --from=build /productdefinitions/server-app/target/*.jar productdefinitions.jar +WORKDIR /app + +# Hier liegt der Trick: Wir kopieren gezielt die Datei, +# die NICHT ".original" im Namen hat, oder nutzen einen präzisen Namen. +# Da 'mvn install' im Modul-Ordner das JAR erzeugt: +COPY --from=build /productdefinitions/server-app/target/server-app-*.jar app.jar + +# Debug-Schritt: Zeig uns im Log, ob die Datei da ist und wie groß sie ist +RUN ls -lh app.jar EXPOSE 9080 -ENTRYPOINT ["java", "-jar", "productdefinitions.jar"] - - +ENTRYPOINT ["java", "-jar", "app.jar"] \ No newline at end of file