spring-mongo.dockerfile 965 B

12345678910111213141516171819202122232425262728293031323334
  1. FROM eclipse-temurin:11 as jre-build
  2. # Create a custom Java runtime
  3. RUN $JAVA_HOME/bin/jlink \
  4. --add-modules ALL-MODULE-PATH \
  5. --strip-debug \
  6. --no-man-pages \
  7. --no-header-files \
  8. --compress=2 \
  9. --output /javaruntime
  10. FROM maven:3.6.1-jdk-11-slim as maven
  11. ENV JAVA_HOME=/opt/java/openjdk
  12. ENV PATH "${JAVA_HOME}/bin:${PATH}"
  13. COPY --from=jre-build /javaruntime $JAVA_HOME
  14. RUN mvn -version
  15. WORKDIR /spring
  16. COPY src src
  17. COPY pom.xml pom.xml
  18. RUN mvn package -q
  19. FROM debian:buster-slim
  20. ENV JAVA_HOME=/opt/java/openjdk
  21. ENV PATH "${JAVA_HOME}/bin:${PATH}"
  22. COPY --from=jre-build /javaruntime $JAVA_HOME
  23. RUN java -version
  24. WORKDIR /spring
  25. COPY --from=maven /spring/target/hello-spring-1.0-SNAPSHOT.jar app.jar
  26. EXPOSE 8080
  27. CMD ["java", "-server", "-XX:+UseNUMA", "-XX:+UseG1GC", "-XX:+DisableExplicitGC", "-XX:+UseStringDeduplication", "-Dlogging.level.root=OFF", "-jar", "app.jar", "--spring.profiles.active=mongo"]