Dockerfile überarbietet
All checks were successful
Productdefinitions Build & Deploy / deploy (push) Successful in 2m50s

This commit is contained in:
2026-01-30 13:29:16 +01:00
parent 8b6341691c
commit 55dd52565c

View File

@@ -1,24 +1,35 @@
# --- Build Stage ---
FROM maven:3.9-eclipse-temurin-21 AS build 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 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 \ RUN git clone -b feature/Produkte --single-branch https://bitbucket.org/omds/omdsservicedefinitions.git /tmp/lib \
&& cd /tmp/lib/OMDSServiceDefinition \ && cd /tmp/lib/OMDSServiceDefinition \
&& mvn clean install -DskipTests && 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 . . COPY . .
RUN mvn install -N # 4. Bauen: Wir installieren das Root-Projekt und bauen dann gezielt das Modul
RUN mvn -pl server-app -am clean install RUN mvn clean install -DskipTests -pl server-app -am
# --- Run Stage ---
FROM eclipse-temurin:21-jre-alpine FROM eclipse-temurin:21-jre-alpine
WORKDIR /productdefinitions WORKDIR /app
RUN ls -la
COPY --from=build /productdefinitions/server-app/target/*.jar productdefinitions.jar # 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 EXPOSE 9080
ENTRYPOINT ["java", "-jar", "productdefinitions.jar"] ENTRYPOINT ["java", "-jar", "app.jar"]