2024-11-21 20:02:15 +00:00
|
|
|
FROM eclipse-temurin:21-alpine AS pre-build
|
|
|
|
ENV JAVA_HOME=/opt/jdk/jdk-21.0.1+12
|
|
|
|
ENV PATH=$JAVA_HOME/bin:$PATH
|
|
|
|
|
|
|
|
ADD https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.1%2B12/OpenJDK21U-jdk_x64_alpine-linux_hotspot_21.0.1_12.tar.gz /opt/jdk/
|
|
|
|
RUN tar -xzvf /opt/jdk/OpenJDK21U-jdk_x64_alpine-linux_hotspot_21.0.1_12.tar.gz -C /opt/jdk/
|
|
|
|
RUN ["jlink", "--compress=2", \
|
|
|
|
"--module-path", "/opt/jdk/jdk-21.0.1+12/jmods/", \
|
|
|
|
"--add-modules", "java.base,java.logging,java.naming,java.desktop,jdk.unsupported", \
|
|
|
|
"--no-header-files", "--no-man-pages", \
|
|
|
|
"--output", "/kiss-runtime"]
|
|
|
|
|
2024-11-21 19:28:34 +00:00
|
|
|
FROM eclipse-temurin:21-alpine AS build
|
|
|
|
WORKDIR /src
|
|
|
|
COPY . .
|
|
|
|
|
|
|
|
RUN ./gradlew clean shadowJar
|
2024-11-21 20:02:15 +00:00
|
|
|
|
|
|
|
FROM alpine:latest AS runner
|
|
|
|
|
|
|
|
COPY --from=pre-build /kiss-runtime /opt/jdk
|
|
|
|
ENV PATH=$PATH:/opt/jdk/bin
|
|
|
|
|
2024-11-21 19:28:34 +00:00
|
|
|
RUN mkdir -p /app
|
|
|
|
WORKDIR /app
|
|
|
|
COPY --from=build /src/build/libs/kiss-shot-acerola.jar /app/kiss-shot-acerola.jar
|
|
|
|
|
|
|
|
CMD ["java", "-jar", "kiss-shot-acerola.jar"]
|