Matthias Andreas Benkard | c83e8de | 2022-05-13 15:25:56 +0200 | [diff] [blame^] | 1 | # SPDX-FileCopyrightText: © 2022 Matthias Andreas Benkard <code@mail.matthias.benkard.de> |
| 2 | # |
| 3 | # SPDX-License-Identifier: GPL-3.0-or-later |
| 4 | |
| 5 | FROM registry.access.redhat.com/ubi8/ubi-minimal:latest AS ubi-minimal |
| 6 | |
| 7 | # Add OpenJDK (complete). |
| 8 | ADD jdk-dist/latest.tar.gz /jdk |
| 9 | |
| 10 | # JLink a trimmed JDK. |
| 11 | RUN microdnf --assumeyes --nodocs install binutils |
| 12 | RUN /jdk/*/bin/jlink \ |
| 13 | -J-XX:MaxRAMPercentage=75 \ |
| 14 | --add-modules ALL-MODULE-PATH \ |
| 15 | --compress=1 \ |
| 16 | --no-man-pages \ |
| 17 | --strip-debug \ |
| 18 | --output /java |
| 19 | RUN /java/bin/java -Xshare:dump |
| 20 | |
| 21 | # Set mtimes to @0 for reproducibility. |
| 22 | RUN microdnf --assumeyes --nodocs install findutils |
| 23 | RUN find /java -exec touch --date=@0 '{}' ';' |
| 24 | |
| 25 | # Build the final image. |
| 26 | FROM registry.access.redhat.com/ubi8/ubi-micro:latest |
| 27 | COPY --from=ubi-minimal /lib64/libz.so.1 /lib64/ |
| 28 | COPY --from=ubi-minimal /java /java |
| 29 | ENV JAVA_HOME=/java |
| 30 | ENV PATH=/java/bin:$PATH |