FROM registry.cn-hangzhou.aliyuncs.com/schbrain/jdk11 as builder
WORKDIR app
COPY ${JAR_FILE} ${APP_NAME}.jar
RUN java -Djarmode=layertools -jar ${APP_NAME}.jar extract

FROM registry.cn-hangzhou.aliyuncs.com/schbrain/jdk11
WORKDIR app
COPY --from=builder app/dependencies/ ./
COPY --from=builder app/spring-boot-loader/ ./
COPY --from=builder app/snapshot-dependencies/ ./
COPY --from=builder app/application/ ./

RUN mkdir -p /data/logs/${APP_NAME}

ENV JVM_OPTS='\
    -XX:+UseG1GC \
    -Xlog:gc*:/data/logs/gc.log:time,uptime \
    -XX:-OmitStackTraceInFastThrow \
    -XX:+HeapDumpOnOutOfMemoryError \
    -XX:+PrintCommandLineFlags \
    ${JAVA_OPTS}'

ENTRYPOINT java ${JVM_OPTS} org.springframework.boot.loader.JarLauncher --spring.profiles.active=${PROFILE}