lti-provider/Dockerfile

32 lines
1022 B
Docker

FROM maven:3.9.9-eclipse-temurin-21-jammy AS build
COPY . /build
WORKDIR /build
RUN --mount=type=cache,target=/root/.m2/repository,rw \
mvn clean package -DskipTests -B
FROM eclipse-temurin:21-jdk AS extract
COPY --from=build /build/target/lti-provider-*.jar app.jar
RUN java -Djarmode=tools -jar app.jar extract --layers --destination extracted
FROM eclipse-temurin:21-jre
LABEL org.opencontainers.image.title="LTI Provider"
LABEL org.opencontainers.image.description="LTI провайдер для лабораторных по Docker и Kubernetes"
LABEL org.opencontainers.image.url="TODO"
LABEL org.opencontainers.image.source="TODO"
LABEL org.opencontainers.image.documentation="#TODO"
WORKDIR /opt
COPY --from=extract extracted/dependencies/ ./
COPY --from=extract extracted/spring-boot-loader/ ./
COPY --from=extract extracted/snapshot-dependencies/ ./
COPY --from=extract extracted/application/ ./
ENV TZ="Europe/Moscow"
ENV JAVA_TOOL_OPTIONS="-Xmx1g -Xms1g"
ENTRYPOINT ["java", "-jar", "/opt/app.jar"]