@@ -24,39 +24,18 @@ COPY wls-exporter-sidecar/ wls-exporter-sidecar/
24
24
25
25
RUN mvn -B -e -C install -Ddocker-build -DskipTests=true
26
26
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
30
28
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"
40
30
41
31
RUN set -eux; \
32
+ microdnf -y install gzip tar; \
42
33
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
57
37
58
- # Finally, copy the exporter sidecar and create the docker image
59
- FROM linux as base
38
+ FROM ghcr.io/oracle/oraclelinux:8-slim
60
39
61
40
LABEL "org.opencontainers.image.authors" =
"Ryan Eberhard <[email protected] >, Russell Gold <[email protected] >" \
62
41
"org.opencontainers.image.url" ="https://github.com/oracle/weblogic-monitoring-exporter" \
@@ -66,6 +45,18 @@ LABEL "org.opencontainers.image.authors"="Ryan Eberhard <
[email protected]
66
45
"org.opencontainers.image.description" ="Oracle WebLogic Monitoring Exporter" \
67
46
"org.opencontainers.image.documentation" ="https://github.com/oracle/weblogic-monitoring-exporter"
68
47
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
+
69
60
COPY --from=build project/wls-exporter-sidecar/target/wls-exporter-sidecar.jar ./
70
61
COPY --from=build project/wls-exporter-sidecar/target/libs ./libs
71
62
COPY start_exporter.sh .
0 commit comments