mirror of
https://github.com/Example-uPagge/spring_boot_docker.git
synced 2024-06-14 11:52:52 +03:00
dockerfile-pro
This commit is contained in:
parent
6402e24554
commit
7a4334fb3f
36
Dockerfile
36
Dockerfile
@ -1,4 +1,32 @@
|
||||
FROM openjdk:17.0.2-jdk-slim-buster
|
||||
ARG JAR_FILE=target/*.jar
|
||||
COPY ${JAR_FILE} app.jar
|
||||
ENTRYPOINT ["java","-jar","/app.jar"]
|
||||
FROM eclipse-temurin:17 as app-build
|
||||
|
||||
ENV RELEASE=17
|
||||
|
||||
WORKDIR /opt/build
|
||||
|
||||
COPY ./target/spring-boot-*.jar ./application.jar
|
||||
|
||||
RUN java -Djarmode=layertools -jar application.jar extract
|
||||
RUN $JAVA_HOME/bin/jlink \
|
||||
--add-modules `jdeps --ignore-missing-deps -q -recursive --multi-release ${RELEASE} --print-module-deps -cp 'dependencies/BOOT-INF/lib/*' 'snapshot-dependencies/BOOT-INF/lib/' application.jar` \
|
||||
--strip-debug \
|
||||
--no-man-pages \
|
||||
--no-header-files \
|
||||
--compress=2 \
|
||||
--output ./custom-jdk
|
||||
|
||||
FROM alpine:latest
|
||||
|
||||
ARG BUILD_PATH=/opt/build
|
||||
ENV JAVA_HOME=/opt/jdk
|
||||
ENV PATH "${JAVA_HOME}/bin:${PATH}"
|
||||
|
||||
WORKDIR application
|
||||
|
||||
COPY --from=app-build $BUILD_PATH/custom-jdk $JAVA_HOME
|
||||
COPY --from=app-build $BUILD_PATH/spring-boot-loader/ ./
|
||||
COPY --from=app-build $BUILD_PATH/dependencies/ ./
|
||||
COPY --from=app-build $BUILD_PATH/snapshot-dependencies/ ./
|
||||
COPY --from=app-build $BUILD_PATH/application/ ./
|
||||
|
||||
ENTRYPOINT ["java", "org.springframework.boot.loader.JarLauncher"]
|
Loading…
Reference in New Issue
Block a user