@@ -24,39 +24,18 @@ COPY wls-exporter-sidecar/ wls-exporter-sidecar/
2424
2525RUN mvn -B -e -C install -Ddocker-build -DskipTests=true
2626
27- # Install Java on top of the linux image
28- FROM ghcr.io/oracle/oraclelinux:8-slim as linux
29- WORKDIR /tmp
27+ FROM ghcr.io/oracle/oraclelinux:8-slim AS jre-build
3028
31- RUN set -eux; \
32- microdnf -y install gzip tar openssl jq; \
33- microdnf -y update; \
34- microdnf clean all
35-
36- ENV LANG="en_US.UTF-8" \
37- JAVA_HOME="/usr/local/java" \
38- PATH="/operator:$JAVA_HOME/bin:$PATH" \
39- JAVA_URL="https://download.java.net/java/GA/jdk17.0.2/dfd4a8d0985749f896bed50d7138ee7f/8/GPL/openjdk-17.0.2_linux-x64_bin.tar.gz"
29+ ENV JAVA_URL="https://download.java.net/java/GA/jdk18.0.1.1/65ae32619e2f40f3a9af3af1851d6e19/2/GPL/openjdk-18.0.1.1_linux-x64_bin.tar.gz"
4030
4131RUN set -eux; \
32+ microdnf -y install gzip tar; \
4233 curl -fL -o /jdk.tar.gz "$JAVA_URL" ; \
43- mkdir -p "$JAVA_HOME" ; \
44- tar --extract --file /jdk.tar.gz --directory "$JAVA_HOME" --strip-components 1; \
45- rm /jdk.tar.gz; \
46- mkdir /usr/java; \
47- ln -sfT "$JAVA_HOME" /usr/java/default; \
48- ln -sfT "$JAVA_HOME" /usr/java/latest; \
49- rm -Rf "$JAVA_HOME/include" "$JAVA_HOME/jmods" ; \
50- rm -f "$JAVA_HOME/lib/src.zip" ; \
51- for bin in "$JAVA_HOME/bin/" *; do \
52- base="$(basename " $bin")" ; \
53- [ ! -e "/usr/bin/$base" ]; \
54- alternatives --install "/usr/bin/$base" "$base" "$bin" 20000; \
55- done; \
56- java -Xshare:dump
34+ mkdir -p /jdk; \
35+ tar --extract --file /jdk.tar.gz --directory /jdk --strip-components 1; \
36+ /jdk/bin/jlink --verbose --compress 2 --strip-java-debug-attributes --no-header-files --no-man-pages --output jre --add-modules java.base,java.logging,java.desktop,java.instrument,java.management,java.naming,java.net.http,java.security.jgss,java.sql,jdk.attach,jdk.jdi,jdk.jfr,jdk.management,jdk.management.jfr,jdk.net,jdk.unsupported,jdk.crypto.cryptoki,jdk.crypto.ec,jdk.zipfs
5737
58- # Finally, copy the exporter sidecar and create the docker image
59- FROM linux as base
38+ FROM ghcr.io/oracle/oraclelinux:8-slim
6039
6140LABEL "org.opencontainers.image.authors" ="Ryan Eberhard <ryan.eberhard@oracle.com>, Russell Gold <russell.gold@oracle.com>" \
6241 "org.opencontainers.image.url" ="https://github.com/oracle/weblogic-monitoring-exporter" \
@@ -66,6 +45,18 @@ LABEL "org.opencontainers.image.authors"="Ryan Eberhard <ryan.eberhard@oracle.co
6645 "org.opencontainers.image.description" ="Oracle WebLogic Monitoring Exporter" \
6746 "org.opencontainers.image.documentation" ="https://github.com/oracle/weblogic-monitoring-exporter"
6847
48+ COPY --from=jre-build /jre jre
49+
50+ RUN set -eux; \
51+ microdnf -y update; \
52+ microdnf clean all; \
53+ for bin in /jre/bin/*; do \
54+ base="$(basename " $bin")" ; \
55+ [ ! -e "/usr/bin/$base" ]; \
56+ alternatives --install "/usr/bin/$base" "$base" "$bin" 20000; \
57+ done; \
58+ java -Xshare:dump
59+
6960COPY --from=build project/wls-exporter-sidecar/target/wls-exporter-sidecar.jar ./
7061COPY --from=build project/wls-exporter-sidecar/target/libs ./libs
7162COPY start_exporter.sh .
0 commit comments