nclazz-mail-relay/Dockerfile

25 lines
865 B
Docker

# Multi-Stage-Build builder
# Extract layers from application to minimize image size
FROM adoptopenjdk/openjdk11:alpine-slim AS builder
WORKDIR application
ARG JAR_FILE=target/*.jar
COPY ${JAR_FILE} application.jar
RUN java -Djarmode=layertools -jar application.jar extract
# Build the actual image
FROM adoptopenjdk/openjdk11:alpine-slim
WORKDIR /application
COPY --from=builder application/dependencies/ ./
COPY --from=builder application/spring-boot-loader/ ./
COPY --from=builder application/snapshot-dependencies/ ./
COPY --from=builder application/application/ ./
EXPOSE 8080
ENV JAVA_OPTIONS=""
HEALTHCHECK --interval=30s --timeout=30s --retries=3 \
CMD wget --no-verbose --spider http://localhost:8080/actuator/health || exit 1
CMD ["java", "org.springframework.boot.loader.JarLauncher", "-XX:+UseSerialGC", "-XX:MaxRAM=256m", "${JAVA_OPTIONS}" ]