Build backend inside docker multi-stage build

This commit is contained in:
2020-05-07 18:30:34 +02:00
parent cda9bf6006
commit e8209143d9
5 changed files with 15 additions and 37 deletions
+15 -1
View File
@@ -1,3 +1,17 @@
FROM maven:3.6.3-jdk-13 as builder
WORKDIR /tmp
# Cache dependencies
COPY pom.xml .
RUN mvn verify clean --fail-never
COPY resources resources
COPY src src
COPY test test
RUN mvn package
FROM openjdk:13-alpine
ENV APPLICATION_USER ktor
@@ -8,7 +22,7 @@ RUN chown -R $APPLICATION_USER /app
USER $APPLICATION_USER
COPY ./target/api-0.0.1-jar-with-dependencies.jar /app/notes-api.jar
COPY --from=builder /tmp/target/api-*-jar-with-dependencies.jar /app/notes-api.jar
WORKDIR /app
CMD ["java", "-server", "-XX:+UnlockExperimentalVMOptions", "-XX:InitialRAMFraction=2", "-XX:MinRAMFraction=2", "-XX:MaxRAMFraction=2", "-XX:+UseG1GC", "-XX:MaxGCPauseMillis=100", "-XX:+UseStringDeduplication", "-jar", "notes-api.jar"]