2 stage build

This commit is contained in:
RM
2026-10-15 00:29:21 +03:00
parent b1e79e1e2b
commit 97d6d9adc6

View File

@@ -1,3 +1,15 @@
FROM eclipse-temurin:26-jre-alpine # Этап 1: сборка jar внутри Docker (maven package отдельно запускать не нужно)
COPY torgi-0.0.1-SNAPSHOT.jar /home/torgi-0.0.1-SNAPSHOT.jar FROM maven:3.9-eclipse-temurin-17 AS build
ENTRYPOINT ["java", "-XX:+UseContainerSupport", "-XX:MaxRAMPercentage=75", "-XX:InitialRAMPercentage=50", "-Xms512m", "-Xmx4096m", "-jar", "/home/torgi-0.0.1-SNAPSHOT.jar"] WORKDIR /app
COPY mvnw pom.xml ./
COPY .mvn .mvn
RUN chmod +x mvnw && ./mvnw -B dependency:go-offline
COPY src ./src
RUN ./mvnw -B package -DskipTests
# Этап 2: запуск (JRE 17 — та же версия, что java.version в pom.xml)
FROM eclipse-temurin:17-jre-alpine
WORKDIR /home
COPY --from=build /app/target/torgi-0.0.1-SNAPSHOT.jar /home/torgi-0.0.1-SNAPSHOT.jar
EXPOSE 8181
ENTRYPOINT ["java", "-XX:+UseContainerSupport", "-XX:MaxRAMPercentage=75", "-XX:InitialRAMPercentage=50", "-Xms512m", "-Xmx4096m", "-jar", "/home/torgi-0.0.1-SNAPSHOT.jar"]