Namespace
library
Image / Tag
ibm-semeru-runtimes:open-24-jre-jammy
Content Digest
sha256:876a5c3d8bb340d722f167c2f07eb3625648586b2a1bf104e40eb0e883dddb69
Details
Created

2025-10-30 18:59:07 UTC

Size

102 MB

Content Digest
Labels
  • org.opencontainers.image.ref.name
    ubuntu
  • org.opencontainers.image.version
    22.04

Environment
JAVA_HOME

/opt/java/openjdk

JAVA_TOOL_OPTIONS

-XX:+IgnoreUnrecognizedVMOptions -XX:+PortableSharedCache -XX:+IdleTuningGcOnIdle -Xshareclasses:name=openj9_system_scc,cacheDir=/opt/java/.scc,readonly,nonFatal

JAVA_VERSION

jdk-24.0.2+12_openj9-0.54.0

LANG

en_US.UTF-8

LANGUAGE

en_US:en

LC_ALL

en_US.UTF-8

PATH

/opt/java/openjdk/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin


Layers

[#000] sha256:af6eca94c8104c8e90d3f9efe59c2b3a02b20aad3d985e31c7cd009ea104c447 - 27.64% (28.2 MB)

[#001] sha256:2a21b6463b998422b24e116df3489d9d21e51905890e2633a0e31009b1399dc1 - 11.39% (11.6 MB)

[#002] sha256:9f41abbf8c764350b0a70f4bb74b5f47036fb06404acf3ba28b0e01306934923 - 55.74% (56.8 MB)

[#003] sha256:560ba2cc7099f30803d6dc2b3514b65719b88831a5a50f5801e679f77ce3d41a - 5.23% (5.33 MB)


History
2025-10-01 07:05:07 UTC

/bin/sh -c #(nop) ARG RELEASE

2025-10-01 07:05:07 UTC

/bin/sh -c #(nop) ARG LAUNCHPAD_BUILD_ARCH

2025-10-01 07:05:07 UTC

/bin/sh -c #(nop) LABEL org.opencontainers.image.ref.name=ubuntu

2025-10-01 07:05:07 UTC

/bin/sh -c #(nop) LABEL org.opencontainers.image.version=22.04

2025-10-01 07:05:09 UTC

/bin/sh -c #(nop) ADD file:32d41b6329e8f89fa4ac92ef97c04b7cfd5e90fb74e1509c3e27d7c91195b7c7 in /

2025-10-01 07:05:10 UTC

/bin/sh -c #(nop) CMD ["/bin/bash"]

2025-10-30 18:58:31 UTC (buildkit.dockerfile.v0)

ENV LANG=en_US.UTF-8 LANGUAGE=en_US:en LC_ALL=en_US.UTF-8

2025-10-30 18:58:31 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c apt-get update && DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends tzdata curl ca-certificates fontconfig locales && echo "en_US.UTF-8 UTF-8" >> /etc/locale.gen && locale-gen en_US.UTF-8 && rm -rf /var/lib/apt/lists/* # buildkit

2025-10-30 18:58:31 UTC (buildkit.dockerfile.v0)

ENV JAVA_VERSION=jdk-24.0.2+12_openj9-0.54.0

2025-10-30 18:58:35 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -eux; ARCH="$(dpkg --print-architecture)"; case "${ARCH}" in aarch64|arm64) ESUM='590d70bcd1d7a029a78ddcad3a36ee5ca2277fa2bdaf9b1585caef627b45e4ed'; BINARY_URL='https://github.com/ibmruntimes/semeru24-binaries/releases/download/jdk-24.0.2%2B12_openj9-0.54.0/ibm-semeru-open-jre_aarch64_linux_24.0.2_12_openj9-0.54.0.tar.gz'; ;; amd64|x86_64) ESUM='ef433a588d348f14ea9bb29a4bc3042db8dabf6f8bf7f46ff2d9dfd48d89a0ca'; BINARY_URL='https://github.com/ibmruntimes/semeru24-binaries/releases/download/jdk-24.0.2%2B12_openj9-0.54.0/ibm-semeru-open-jre_x64_linux_24.0.2_12_openj9-0.54.0.tar.gz'; ;; ppc64el|ppc64le) ESUM='94bc64417befbf28a5d60593c3a3d101272d956f3e87e7fcaa62c10417ef4d9f'; BINARY_URL='https://github.com/ibmruntimes/semeru24-binaries/releases/download/jdk-24.0.2%2B12_openj9-0.54.0/ibm-semeru-open-jre_ppc64le_linux_24.0.2_12_openj9-0.54.0.tar.gz'; ;; s390x) ESUM='2b5d3e51eb1b9273df6c1142a6a52e31540a1da31cd87c82661340d7cc023808'; BINARY_URL='https://github.com/ibmruntimes/semeru24-binaries/releases/download/jdk-24.0.2%2B12_openj9-0.54.0/ibm-semeru-open-jre_s390x_linux_24.0.2_12_openj9-0.54.0.tar.gz'; ;; *) echo "Unsupported arch: ${ARCH}"; exit 1; ;; esac; curl -LfsSo /tmp/openjdk.tar.gz ${BINARY_URL}; echo "${ESUM} */tmp/openjdk.tar.gz" | sha256sum -c -; mkdir -p /opt/java/openjdk; cd /opt/java/openjdk; tar -xf /tmp/openjdk.tar.gz --strip-components=1; rm -rf /tmp/openjdk.tar.gz; # buildkit

2025-10-30 18:58:35 UTC (buildkit.dockerfile.v0)

ENV JAVA_HOME=/opt/java/openjdk PATH=/opt/java/openjdk/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin

2025-10-30 18:58:35 UTC (buildkit.dockerfile.v0)

ENV JAVA_TOOL_OPTIONS=-XX:+IgnoreUnrecognizedVMOptions -XX:+PortableSharedCache -XX:+IdleTuningGcOnIdle -Xshareclasses:name=openj9_system_scc,cacheDir=/opt/java/.scc,readonly,nonFatal

2025-10-30 18:59:07 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -eux; unset OPENJ9_JAVA_OPTIONS; SCC_SIZE="50m"; DOWNLOAD_PATH_TOMCAT=/tmp/tomcat; INSTALL_PATH_TOMCAT=/opt/tomcat-home; TOMCAT_CHECKSUM="2a955d97c6ed7d01fbf0392f3e2920129bcd541b259e894f441e411bac3bbe65576bcb3a314f06d624c9d70040828d26aa8a2c4f39d225d73f6a3db7523aa3ba"; TOMCAT_VERSION="9.0.111"; TOMCAT_FILENAME="apache-tomcat-${TOMCAT_VERSION}.tar.gz"; SUCCESS=; mkdir -p "${DOWNLOAD_PATH_TOMCAT}" "${INSTALL_PATH_TOMCAT}"; for baseUrl in https://dlcdn.apache.org/tomcat/tomcat-9/v${TOMCAT_VERSION}/bin https://archive.apache.org/dist/tomcat/tomcat-9/v${TOMCAT_VERSION}/bin ; do if curl -LfsSo "${DOWNLOAD_PATH_TOMCAT}"/tomcat.tar.gz "${baseUrl}/${TOMCAT_FILENAME}" && [ -s "${DOWNLOAD_PATH_TOMCAT}"/tomcat.tar.gz ]; then SUCCESS=1; break; fi; done; [ -n "$SUCCESS" ]; echo "${TOMCAT_CHECKSUM} ${DOWNLOAD_PATH_TOMCAT}/tomcat.tar.gz" | sha512sum -c -; tar -xf "${DOWNLOAD_PATH_TOMCAT}"/tomcat.tar.gz -C "${INSTALL_PATH_TOMCAT}" --strip-components=1; rm -rf "${DOWNLOAD_PATH_TOMCAT}"; java -Xshareclasses:name=dry_run_scc,cacheDir=/opt/java/.scc,bootClassesOnly,nonFatal,createLayer -Xscmx$SCC_SIZE -version; export OPENJ9_JAVA_OPTIONS="-XX:+IProfileDuringStartupPhase -Xshareclasses:name=dry_run_scc,cacheDir=/opt/java/.scc,bootClassesOnly,nonFatal"; "${INSTALL_PATH_TOMCAT}"/bin/startup.sh; sleep 5; "${INSTALL_PATH_TOMCAT}"/bin/shutdown.sh -force; sleep 15; FULL=$( (java -Xshareclasses:name=dry_run_scc,cacheDir=/opt/java/.scc,printallStats 2>&1 || true) | awk '/^Cache is [0-9.]*% .*full/ {print substr($3, 1, length($3)-1)}'); DST_CACHE=$(java -Xshareclasses:name=dry_run_scc,cacheDir=/opt/java/.scc,destroy 2>&1 || true); SCC_SIZE=$(echo $SCC_SIZE | sed 's/.$//'); SCC_SIZE=$(awk "BEGIN {print int($SCC_SIZE * $FULL / 100.0)}"); [ "${SCC_SIZE}" -eq 0 ] && SCC_SIZE=1; SCC_SIZE="${SCC_SIZE}m"; java -Xshareclasses:name=openj9_system_scc,cacheDir=/opt/java/.scc,bootClassesOnly,nonFatal,createLayer -Xscmx$SCC_SIZE -version; unset OPENJ9_JAVA_OPTIONS; export OPENJ9_JAVA_OPTIONS="-XX:+IProfileDuringStartupPhase -Xshareclasses:name=openj9_system_scc,cacheDir=/opt/java/.scc,bootClassesOnly,nonFatal"; "${INSTALL_PATH_TOMCAT}"/bin/startup.sh; sleep 5; "${INSTALL_PATH_TOMCAT}"/bin/shutdown.sh -force; sleep 5; FULL=$( (java -Xshareclasses:name=openj9_system_scc,cacheDir=/opt/java/.scc,printallStats 2>&1 || true) | awk '/^Cache is [0-9.]*% .*full/ {print substr($3, 1, length($3)-1)}'); echo "SCC layer is $FULL% full."; rm -rf "${INSTALL_PATH_TOMCAT}"; if [ -d "/opt/java/.scc" ]; then chmod -R 0777 /opt/java/.scc; fi; echo "SCC generation phase completed"; # buildkit

Details
Created

2025-10-30 18:56:54 UTC

Size

97.8 MB

Content Digest
Labels
  • org.opencontainers.image.ref.name
    ubuntu
  • org.opencontainers.image.version
    22.04

Environment
JAVA_HOME

/opt/java/openjdk

JAVA_TOOL_OPTIONS

-XX:+IgnoreUnrecognizedVMOptions -XX:+PortableSharedCache -XX:+IdleTuningGcOnIdle -Xshareclasses:name=openj9_system_scc,cacheDir=/opt/java/.scc,readonly,nonFatal

JAVA_VERSION

jdk-24.0.2+12_openj9-0.54.0

LANG

en_US.UTF-8

LANGUAGE

en_US:en

LC_ALL

en_US.UTF-8

PATH

/opt/java/openjdk/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin


Layers

[#000] sha256:f85691aa4b9092cbb48212c835b78068e3321656ba2c306dae491e1a02d1b4d3 - 26.71% (26.1 MB)

[#001] sha256:040f67fa4eec83079a9633f2a50173b1e0cc6661a6a0c66fe958356446d2f619 - 11.83% (11.6 MB)

[#002] sha256:dd9bf67d6907f06e886b6c181360c07567c1e52c01f407341ed8281ec90c1fa9 - 56.38% (55.1 MB)

[#003] sha256:17209a9f1dc1e32a08c576c839e7b327b96a8a5672617dfdb8a60ae8942e36d1 - 5.08% (4.97 MB)


History
2025-10-01 07:16:10 UTC

/bin/sh -c #(nop) ARG RELEASE

2025-10-01 07:16:10 UTC

/bin/sh -c #(nop) ARG LAUNCHPAD_BUILD_ARCH

2025-10-01 07:16:10 UTC

/bin/sh -c #(nop) LABEL org.opencontainers.image.ref.name=ubuntu

2025-10-01 07:16:10 UTC

/bin/sh -c #(nop) LABEL org.opencontainers.image.version=22.04

2025-10-01 07:16:12 UTC

/bin/sh -c #(nop) ADD file:7a71c1d52054f8e04c815eaec639d14adaaa62346860f4003201834430b7ff18 in /

2025-10-01 07:16:12 UTC

/bin/sh -c #(nop) CMD ["/bin/bash"]

2025-10-30 18:55:10 UTC (buildkit.dockerfile.v0)

ENV LANG=en_US.UTF-8 LANGUAGE=en_US:en LC_ALL=en_US.UTF-8

2025-10-30 18:55:10 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c apt-get update && DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends tzdata curl ca-certificates fontconfig locales && echo "en_US.UTF-8 UTF-8" >> /etc/locale.gen && locale-gen en_US.UTF-8 && rm -rf /var/lib/apt/lists/* # buildkit

2025-10-30 18:55:10 UTC (buildkit.dockerfile.v0)

ENV JAVA_VERSION=jdk-24.0.2+12_openj9-0.54.0

2025-10-30 18:56:22 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -eux; ARCH="$(dpkg --print-architecture)"; case "${ARCH}" in aarch64|arm64) ESUM='590d70bcd1d7a029a78ddcad3a36ee5ca2277fa2bdaf9b1585caef627b45e4ed'; BINARY_URL='https://github.com/ibmruntimes/semeru24-binaries/releases/download/jdk-24.0.2%2B12_openj9-0.54.0/ibm-semeru-open-jre_aarch64_linux_24.0.2_12_openj9-0.54.0.tar.gz'; ;; amd64|x86_64) ESUM='ef433a588d348f14ea9bb29a4bc3042db8dabf6f8bf7f46ff2d9dfd48d89a0ca'; BINARY_URL='https://github.com/ibmruntimes/semeru24-binaries/releases/download/jdk-24.0.2%2B12_openj9-0.54.0/ibm-semeru-open-jre_x64_linux_24.0.2_12_openj9-0.54.0.tar.gz'; ;; ppc64el|ppc64le) ESUM='94bc64417befbf28a5d60593c3a3d101272d956f3e87e7fcaa62c10417ef4d9f'; BINARY_URL='https://github.com/ibmruntimes/semeru24-binaries/releases/download/jdk-24.0.2%2B12_openj9-0.54.0/ibm-semeru-open-jre_ppc64le_linux_24.0.2_12_openj9-0.54.0.tar.gz'; ;; s390x) ESUM='2b5d3e51eb1b9273df6c1142a6a52e31540a1da31cd87c82661340d7cc023808'; BINARY_URL='https://github.com/ibmruntimes/semeru24-binaries/releases/download/jdk-24.0.2%2B12_openj9-0.54.0/ibm-semeru-open-jre_s390x_linux_24.0.2_12_openj9-0.54.0.tar.gz'; ;; *) echo "Unsupported arch: ${ARCH}"; exit 1; ;; esac; curl -LfsSo /tmp/openjdk.tar.gz ${BINARY_URL}; echo "${ESUM} */tmp/openjdk.tar.gz" | sha256sum -c -; mkdir -p /opt/java/openjdk; cd /opt/java/openjdk; tar -xf /tmp/openjdk.tar.gz --strip-components=1; rm -rf /tmp/openjdk.tar.gz; # buildkit

2025-10-30 18:56:22 UTC (buildkit.dockerfile.v0)

ENV JAVA_HOME=/opt/java/openjdk PATH=/opt/java/openjdk/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin

2025-10-30 18:56:22 UTC (buildkit.dockerfile.v0)

ENV JAVA_TOOL_OPTIONS=-XX:+IgnoreUnrecognizedVMOptions -XX:+PortableSharedCache -XX:+IdleTuningGcOnIdle -Xshareclasses:name=openj9_system_scc,cacheDir=/opt/java/.scc,readonly,nonFatal

2025-10-30 18:56:54 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -eux; unset OPENJ9_JAVA_OPTIONS; SCC_SIZE="50m"; DOWNLOAD_PATH_TOMCAT=/tmp/tomcat; INSTALL_PATH_TOMCAT=/opt/tomcat-home; TOMCAT_CHECKSUM="2a955d97c6ed7d01fbf0392f3e2920129bcd541b259e894f441e411bac3bbe65576bcb3a314f06d624c9d70040828d26aa8a2c4f39d225d73f6a3db7523aa3ba"; TOMCAT_VERSION="9.0.111"; TOMCAT_FILENAME="apache-tomcat-${TOMCAT_VERSION}.tar.gz"; SUCCESS=; mkdir -p "${DOWNLOAD_PATH_TOMCAT}" "${INSTALL_PATH_TOMCAT}"; for baseUrl in https://dlcdn.apache.org/tomcat/tomcat-9/v${TOMCAT_VERSION}/bin https://archive.apache.org/dist/tomcat/tomcat-9/v${TOMCAT_VERSION}/bin ; do if curl -LfsSo "${DOWNLOAD_PATH_TOMCAT}"/tomcat.tar.gz "${baseUrl}/${TOMCAT_FILENAME}" && [ -s "${DOWNLOAD_PATH_TOMCAT}"/tomcat.tar.gz ]; then SUCCESS=1; break; fi; done; [ -n "$SUCCESS" ]; echo "${TOMCAT_CHECKSUM} ${DOWNLOAD_PATH_TOMCAT}/tomcat.tar.gz" | sha512sum -c -; tar -xf "${DOWNLOAD_PATH_TOMCAT}"/tomcat.tar.gz -C "${INSTALL_PATH_TOMCAT}" --strip-components=1; rm -rf "${DOWNLOAD_PATH_TOMCAT}"; java -Xshareclasses:name=dry_run_scc,cacheDir=/opt/java/.scc,bootClassesOnly,nonFatal,createLayer -Xscmx$SCC_SIZE -version; export OPENJ9_JAVA_OPTIONS="-XX:+IProfileDuringStartupPhase -Xshareclasses:name=dry_run_scc,cacheDir=/opt/java/.scc,bootClassesOnly,nonFatal"; "${INSTALL_PATH_TOMCAT}"/bin/startup.sh; sleep 5; "${INSTALL_PATH_TOMCAT}"/bin/shutdown.sh -force; sleep 15; FULL=$( (java -Xshareclasses:name=dry_run_scc,cacheDir=/opt/java/.scc,printallStats 2>&1 || true) | awk '/^Cache is [0-9.]*% .*full/ {print substr($3, 1, length($3)-1)}'); DST_CACHE=$(java -Xshareclasses:name=dry_run_scc,cacheDir=/opt/java/.scc,destroy 2>&1 || true); SCC_SIZE=$(echo $SCC_SIZE | sed 's/.$//'); SCC_SIZE=$(awk "BEGIN {print int($SCC_SIZE * $FULL / 100.0)}"); [ "${SCC_SIZE}" -eq 0 ] && SCC_SIZE=1; SCC_SIZE="${SCC_SIZE}m"; java -Xshareclasses:name=openj9_system_scc,cacheDir=/opt/java/.scc,bootClassesOnly,nonFatal,createLayer -Xscmx$SCC_SIZE -version; unset OPENJ9_JAVA_OPTIONS; export OPENJ9_JAVA_OPTIONS="-XX:+IProfileDuringStartupPhase -Xshareclasses:name=openj9_system_scc,cacheDir=/opt/java/.scc,bootClassesOnly,nonFatal"; "${INSTALL_PATH_TOMCAT}"/bin/startup.sh; sleep 5; "${INSTALL_PATH_TOMCAT}"/bin/shutdown.sh -force; sleep 5; FULL=$( (java -Xshareclasses:name=openj9_system_scc,cacheDir=/opt/java/.scc,printallStats 2>&1 || true) | awk '/^Cache is [0-9.]*% .*full/ {print substr($3, 1, length($3)-1)}'); echo "SCC layer is $FULL% full."; rm -rf "${INSTALL_PATH_TOMCAT}"; if [ -d "/opt/java/.scc" ]; then chmod -R 0777 /opt/java/.scc; fi; echo "SCC generation phase completed"; # buildkit

Details
Created

2025-10-30 19:20:29 UTC

Size

108 MB

Content Digest
Labels
  • org.opencontainers.image.ref.name
    ubuntu
  • org.opencontainers.image.version
    22.04

Environment
JAVA_HOME

/opt/java/openjdk

JAVA_TOOL_OPTIONS

-XX:+IgnoreUnrecognizedVMOptions -XX:+PortableSharedCache -XX:+IdleTuningGcOnIdle -Xshareclasses:name=openj9_system_scc,cacheDir=/opt/java/.scc,readonly,nonFatal

JAVA_VERSION

jdk-24.0.2+12_openj9-0.54.0

LANG

en_US.UTF-8

LANGUAGE

en_US:en

LC_ALL

en_US.UTF-8

PATH

/opt/java/openjdk/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin


Layers

[#000] sha256:2fbe0139d4362c4f9e73d9ece05926b347d08fa0942b6a7a53617f13f42d1f91 - 30.49% (32.9 MB)

[#001] sha256:4d05c427cc331d7b6dd9baffe91a10981b54840825b7525c3636088e5c3447a5 - 11.41% (12.3 MB)

[#002] sha256:1ad578501d1786518ba43504afe914e8f74150d7dfa1abbf56a0a4ac983e433c - 54.37% (58.6 MB)

[#003] sha256:6411957df372141e05978898ea6a0b474dbe72f6399237e03e36f2b101ee825a - 3.73% (4.02 MB)


History
2025-10-01 07:06:37 UTC

/bin/sh -c #(nop) ARG RELEASE

2025-10-01 07:06:37 UTC

/bin/sh -c #(nop) ARG LAUNCHPAD_BUILD_ARCH

2025-10-01 07:06:38 UTC

/bin/sh -c #(nop) LABEL org.opencontainers.image.ref.name=ubuntu

2025-10-01 07:06:38 UTC

/bin/sh -c #(nop) LABEL org.opencontainers.image.version=22.04

2025-10-01 07:06:42 UTC

/bin/sh -c #(nop) ADD file:0aa9da71877b87fa24e5611ae918040b9e86da1da320091962f21431bce21835 in /

2025-10-01 07:06:43 UTC

/bin/sh -c #(nop) CMD ["/bin/bash"]

2025-10-30 18:52:43 UTC (buildkit.dockerfile.v0)

ENV LANG=en_US.UTF-8 LANGUAGE=en_US:en LC_ALL=en_US.UTF-8

2025-10-30 18:52:43 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c apt-get update && DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends tzdata curl ca-certificates fontconfig locales && echo "en_US.UTF-8 UTF-8" >> /etc/locale.gen && locale-gen en_US.UTF-8 && rm -rf /var/lib/apt/lists/* # buildkit

2025-10-30 18:52:43 UTC (buildkit.dockerfile.v0)

ENV JAVA_VERSION=jdk-24.0.2+12_openj9-0.54.0

2025-10-30 19:19:56 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -eux; ARCH="$(dpkg --print-architecture)"; case "${ARCH}" in aarch64|arm64) ESUM='590d70bcd1d7a029a78ddcad3a36ee5ca2277fa2bdaf9b1585caef627b45e4ed'; BINARY_URL='https://github.com/ibmruntimes/semeru24-binaries/releases/download/jdk-24.0.2%2B12_openj9-0.54.0/ibm-semeru-open-jre_aarch64_linux_24.0.2_12_openj9-0.54.0.tar.gz'; ;; amd64|x86_64) ESUM='ef433a588d348f14ea9bb29a4bc3042db8dabf6f8bf7f46ff2d9dfd48d89a0ca'; BINARY_URL='https://github.com/ibmruntimes/semeru24-binaries/releases/download/jdk-24.0.2%2B12_openj9-0.54.0/ibm-semeru-open-jre_x64_linux_24.0.2_12_openj9-0.54.0.tar.gz'; ;; ppc64el|ppc64le) ESUM='94bc64417befbf28a5d60593c3a3d101272d956f3e87e7fcaa62c10417ef4d9f'; BINARY_URL='https://github.com/ibmruntimes/semeru24-binaries/releases/download/jdk-24.0.2%2B12_openj9-0.54.0/ibm-semeru-open-jre_ppc64le_linux_24.0.2_12_openj9-0.54.0.tar.gz'; ;; s390x) ESUM='2b5d3e51eb1b9273df6c1142a6a52e31540a1da31cd87c82661340d7cc023808'; BINARY_URL='https://github.com/ibmruntimes/semeru24-binaries/releases/download/jdk-24.0.2%2B12_openj9-0.54.0/ibm-semeru-open-jre_s390x_linux_24.0.2_12_openj9-0.54.0.tar.gz'; ;; *) echo "Unsupported arch: ${ARCH}"; exit 1; ;; esac; curl -LfsSo /tmp/openjdk.tar.gz ${BINARY_URL}; echo "${ESUM} */tmp/openjdk.tar.gz" | sha256sum -c -; mkdir -p /opt/java/openjdk; cd /opt/java/openjdk; tar -xf /tmp/openjdk.tar.gz --strip-components=1; rm -rf /tmp/openjdk.tar.gz; # buildkit

2025-10-30 19:19:56 UTC (buildkit.dockerfile.v0)

ENV JAVA_HOME=/opt/java/openjdk PATH=/opt/java/openjdk/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin

2025-10-30 19:19:56 UTC (buildkit.dockerfile.v0)

ENV JAVA_TOOL_OPTIONS=-XX:+IgnoreUnrecognizedVMOptions -XX:+PortableSharedCache -XX:+IdleTuningGcOnIdle -Xshareclasses:name=openj9_system_scc,cacheDir=/opt/java/.scc,readonly,nonFatal

2025-10-30 19:20:29 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -eux; unset OPENJ9_JAVA_OPTIONS; SCC_SIZE="50m"; DOWNLOAD_PATH_TOMCAT=/tmp/tomcat; INSTALL_PATH_TOMCAT=/opt/tomcat-home; TOMCAT_CHECKSUM="2a955d97c6ed7d01fbf0392f3e2920129bcd541b259e894f441e411bac3bbe65576bcb3a314f06d624c9d70040828d26aa8a2c4f39d225d73f6a3db7523aa3ba"; TOMCAT_VERSION="9.0.111"; TOMCAT_FILENAME="apache-tomcat-${TOMCAT_VERSION}.tar.gz"; SUCCESS=; mkdir -p "${DOWNLOAD_PATH_TOMCAT}" "${INSTALL_PATH_TOMCAT}"; for baseUrl in https://dlcdn.apache.org/tomcat/tomcat-9/v${TOMCAT_VERSION}/bin https://archive.apache.org/dist/tomcat/tomcat-9/v${TOMCAT_VERSION}/bin ; do if curl -LfsSo "${DOWNLOAD_PATH_TOMCAT}"/tomcat.tar.gz "${baseUrl}/${TOMCAT_FILENAME}" && [ -s "${DOWNLOAD_PATH_TOMCAT}"/tomcat.tar.gz ]; then SUCCESS=1; break; fi; done; [ -n "$SUCCESS" ]; echo "${TOMCAT_CHECKSUM} ${DOWNLOAD_PATH_TOMCAT}/tomcat.tar.gz" | sha512sum -c -; tar -xf "${DOWNLOAD_PATH_TOMCAT}"/tomcat.tar.gz -C "${INSTALL_PATH_TOMCAT}" --strip-components=1; rm -rf "${DOWNLOAD_PATH_TOMCAT}"; java -Xshareclasses:name=dry_run_scc,cacheDir=/opt/java/.scc,bootClassesOnly,nonFatal,createLayer -Xscmx$SCC_SIZE -version; export OPENJ9_JAVA_OPTIONS="-XX:+IProfileDuringStartupPhase -Xshareclasses:name=dry_run_scc,cacheDir=/opt/java/.scc,bootClassesOnly,nonFatal"; "${INSTALL_PATH_TOMCAT}"/bin/startup.sh; sleep 5; "${INSTALL_PATH_TOMCAT}"/bin/shutdown.sh -force; sleep 15; FULL=$( (java -Xshareclasses:name=dry_run_scc,cacheDir=/opt/java/.scc,printallStats 2>&1 || true) | awk '/^Cache is [0-9.]*% .*full/ {print substr($3, 1, length($3)-1)}'); DST_CACHE=$(java -Xshareclasses:name=dry_run_scc,cacheDir=/opt/java/.scc,destroy 2>&1 || true); SCC_SIZE=$(echo $SCC_SIZE | sed 's/.$//'); SCC_SIZE=$(awk "BEGIN {print int($SCC_SIZE * $FULL / 100.0)}"); [ "${SCC_SIZE}" -eq 0 ] && SCC_SIZE=1; SCC_SIZE="${SCC_SIZE}m"; java -Xshareclasses:name=openj9_system_scc,cacheDir=/opt/java/.scc,bootClassesOnly,nonFatal,createLayer -Xscmx$SCC_SIZE -version; unset OPENJ9_JAVA_OPTIONS; export OPENJ9_JAVA_OPTIONS="-XX:+IProfileDuringStartupPhase -Xshareclasses:name=openj9_system_scc,cacheDir=/opt/java/.scc,bootClassesOnly,nonFatal"; "${INSTALL_PATH_TOMCAT}"/bin/startup.sh; sleep 5; "${INSTALL_PATH_TOMCAT}"/bin/shutdown.sh -force; sleep 5; FULL=$( (java -Xshareclasses:name=openj9_system_scc,cacheDir=/opt/java/.scc,printallStats 2>&1 || true) | awk '/^Cache is [0-9.]*% .*full/ {print substr($3, 1, length($3)-1)}'); echo "SCC layer is $FULL% full."; rm -rf "${INSTALL_PATH_TOMCAT}"; if [ -d "/opt/java/.scc" ]; then chmod -R 0777 /opt/java/.scc; fi; echo "SCC generation phase completed"; # buildkit

Details
Created

2025-10-30 19:33:49 UTC

Size

99.6 MB

Content Digest
Labels
  • org.opencontainers.image.ref.name
    ubuntu
  • org.opencontainers.image.version
    22.04

Environment
JAVA_HOME

/opt/java/openjdk

JAVA_TOOL_OPTIONS

-XX:+IgnoreUnrecognizedVMOptions -XX:+PortableSharedCache -XX:+IdleTuningGcOnIdle -Xshareclasses:name=openj9_system_scc,cacheDir=/opt/java/.scc,readonly,nonFatal

JAVA_VERSION

jdk-24.0.2+12_openj9-0.54.0

LANG

en_US.UTF-8

LANGUAGE

en_US:en

LC_ALL

en_US.UTF-8

PATH

/opt/java/openjdk/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin


Layers

[#000] sha256:e4a5a322dd65d010805129ca793d5d5e6b07872cbc2f41d566a84091b39c794e - 26.81% (26.7 MB)

[#001] sha256:b85ec275e8f24c28d1884cb863f6a811d464cfb2b0e274ec7e8be26978e82f3c - 11.7% (11.7 MB)

[#002] sha256:ff1eb38a3de5b550a636a172a1a1ead58fb10c264a3087e6a679b251f3479f9a - 56.08% (55.9 MB)

[#003] sha256:03ecb83022f37589720f734a29ebfdd193647198e52623bba868ea3f474a6483 - 5.41% (5.39 MB)


History
2025-10-01 07:05:26 UTC

/bin/sh -c #(nop) ARG RELEASE

2025-10-01 07:05:26 UTC

/bin/sh -c #(nop) ARG LAUNCHPAD_BUILD_ARCH

2025-10-01 07:05:26 UTC

/bin/sh -c #(nop) LABEL org.opencontainers.image.ref.name=ubuntu

2025-10-01 07:05:26 UTC

/bin/sh -c #(nop) LABEL org.opencontainers.image.version=22.04

2025-10-01 07:05:28 UTC

/bin/sh -c #(nop) ADD file:14014318483b695859df2bd7cf65af4796bff1435b6a558937389c62e3df6cfa in /

2025-10-01 07:05:28 UTC

/bin/sh -c #(nop) CMD ["/bin/bash"]

2025-10-30 18:53:24 UTC (buildkit.dockerfile.v0)

ENV LANG=en_US.UTF-8 LANGUAGE=en_US:en LC_ALL=en_US.UTF-8

2025-10-30 18:53:24 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c apt-get update && DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends tzdata curl ca-certificates fontconfig locales && echo "en_US.UTF-8 UTF-8" >> /etc/locale.gen && locale-gen en_US.UTF-8 && rm -rf /var/lib/apt/lists/* # buildkit

2025-10-30 18:53:24 UTC (buildkit.dockerfile.v0)

ENV JAVA_VERSION=jdk-24.0.2+12_openj9-0.54.0

2025-10-30 19:33:12 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -eux; ARCH="$(dpkg --print-architecture)"; case "${ARCH}" in aarch64|arm64) ESUM='590d70bcd1d7a029a78ddcad3a36ee5ca2277fa2bdaf9b1585caef627b45e4ed'; BINARY_URL='https://github.com/ibmruntimes/semeru24-binaries/releases/download/jdk-24.0.2%2B12_openj9-0.54.0/ibm-semeru-open-jre_aarch64_linux_24.0.2_12_openj9-0.54.0.tar.gz'; ;; amd64|x86_64) ESUM='ef433a588d348f14ea9bb29a4bc3042db8dabf6f8bf7f46ff2d9dfd48d89a0ca'; BINARY_URL='https://github.com/ibmruntimes/semeru24-binaries/releases/download/jdk-24.0.2%2B12_openj9-0.54.0/ibm-semeru-open-jre_x64_linux_24.0.2_12_openj9-0.54.0.tar.gz'; ;; ppc64el|ppc64le) ESUM='94bc64417befbf28a5d60593c3a3d101272d956f3e87e7fcaa62c10417ef4d9f'; BINARY_URL='https://github.com/ibmruntimes/semeru24-binaries/releases/download/jdk-24.0.2%2B12_openj9-0.54.0/ibm-semeru-open-jre_ppc64le_linux_24.0.2_12_openj9-0.54.0.tar.gz'; ;; s390x) ESUM='2b5d3e51eb1b9273df6c1142a6a52e31540a1da31cd87c82661340d7cc023808'; BINARY_URL='https://github.com/ibmruntimes/semeru24-binaries/releases/download/jdk-24.0.2%2B12_openj9-0.54.0/ibm-semeru-open-jre_s390x_linux_24.0.2_12_openj9-0.54.0.tar.gz'; ;; *) echo "Unsupported arch: ${ARCH}"; exit 1; ;; esac; curl -LfsSo /tmp/openjdk.tar.gz ${BINARY_URL}; echo "${ESUM} */tmp/openjdk.tar.gz" | sha256sum -c -; mkdir -p /opt/java/openjdk; cd /opt/java/openjdk; tar -xf /tmp/openjdk.tar.gz --strip-components=1; rm -rf /tmp/openjdk.tar.gz; # buildkit

2025-10-30 19:33:12 UTC (buildkit.dockerfile.v0)

ENV JAVA_HOME=/opt/java/openjdk PATH=/opt/java/openjdk/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin

2025-10-30 19:33:12 UTC (buildkit.dockerfile.v0)

ENV JAVA_TOOL_OPTIONS=-XX:+IgnoreUnrecognizedVMOptions -XX:+PortableSharedCache -XX:+IdleTuningGcOnIdle -Xshareclasses:name=openj9_system_scc,cacheDir=/opt/java/.scc,readonly,nonFatal

2025-10-30 19:33:49 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -eux; unset OPENJ9_JAVA_OPTIONS; SCC_SIZE="50m"; DOWNLOAD_PATH_TOMCAT=/tmp/tomcat; INSTALL_PATH_TOMCAT=/opt/tomcat-home; TOMCAT_CHECKSUM="2a955d97c6ed7d01fbf0392f3e2920129bcd541b259e894f441e411bac3bbe65576bcb3a314f06d624c9d70040828d26aa8a2c4f39d225d73f6a3db7523aa3ba"; TOMCAT_VERSION="9.0.111"; TOMCAT_FILENAME="apache-tomcat-${TOMCAT_VERSION}.tar.gz"; SUCCESS=; mkdir -p "${DOWNLOAD_PATH_TOMCAT}" "${INSTALL_PATH_TOMCAT}"; for baseUrl in https://dlcdn.apache.org/tomcat/tomcat-9/v${TOMCAT_VERSION}/bin https://archive.apache.org/dist/tomcat/tomcat-9/v${TOMCAT_VERSION}/bin ; do if curl -LfsSo "${DOWNLOAD_PATH_TOMCAT}"/tomcat.tar.gz "${baseUrl}/${TOMCAT_FILENAME}" && [ -s "${DOWNLOAD_PATH_TOMCAT}"/tomcat.tar.gz ]; then SUCCESS=1; break; fi; done; [ -n "$SUCCESS" ]; echo "${TOMCAT_CHECKSUM} ${DOWNLOAD_PATH_TOMCAT}/tomcat.tar.gz" | sha512sum -c -; tar -xf "${DOWNLOAD_PATH_TOMCAT}"/tomcat.tar.gz -C "${INSTALL_PATH_TOMCAT}" --strip-components=1; rm -rf "${DOWNLOAD_PATH_TOMCAT}"; java -Xshareclasses:name=dry_run_scc,cacheDir=/opt/java/.scc,bootClassesOnly,nonFatal,createLayer -Xscmx$SCC_SIZE -version; export OPENJ9_JAVA_OPTIONS="-XX:+IProfileDuringStartupPhase -Xshareclasses:name=dry_run_scc,cacheDir=/opt/java/.scc,bootClassesOnly,nonFatal"; "${INSTALL_PATH_TOMCAT}"/bin/startup.sh; sleep 5; "${INSTALL_PATH_TOMCAT}"/bin/shutdown.sh -force; sleep 15; FULL=$( (java -Xshareclasses:name=dry_run_scc,cacheDir=/opt/java/.scc,printallStats 2>&1 || true) | awk '/^Cache is [0-9.]*% .*full/ {print substr($3, 1, length($3)-1)}'); DST_CACHE=$(java -Xshareclasses:name=dry_run_scc,cacheDir=/opt/java/.scc,destroy 2>&1 || true); SCC_SIZE=$(echo $SCC_SIZE | sed 's/.$//'); SCC_SIZE=$(awk "BEGIN {print int($SCC_SIZE * $FULL / 100.0)}"); [ "${SCC_SIZE}" -eq 0 ] && SCC_SIZE=1; SCC_SIZE="${SCC_SIZE}m"; java -Xshareclasses:name=openj9_system_scc,cacheDir=/opt/java/.scc,bootClassesOnly,nonFatal,createLayer -Xscmx$SCC_SIZE -version; unset OPENJ9_JAVA_OPTIONS; export OPENJ9_JAVA_OPTIONS="-XX:+IProfileDuringStartupPhase -Xshareclasses:name=openj9_system_scc,cacheDir=/opt/java/.scc,bootClassesOnly,nonFatal"; "${INSTALL_PATH_TOMCAT}"/bin/startup.sh; sleep 5; "${INSTALL_PATH_TOMCAT}"/bin/shutdown.sh -force; sleep 5; FULL=$( (java -Xshareclasses:name=openj9_system_scc,cacheDir=/opt/java/.scc,printallStats 2>&1 || true) | awk '/^Cache is [0-9.]*% .*full/ {print substr($3, 1, length($3)-1)}'); echo "SCC layer is $FULL% full."; rm -rf "${INSTALL_PATH_TOMCAT}"; if [ -d "/opt/java/.scc" ]; then chmod -R 0777 /opt/java/.scc; fi; echo "SCC generation phase completed"; # buildkit

Danger Zone
Delete Tag

Please be careful as this will not just delete the reference but also the actual content!

For example when you have latest and v1.2.3 both pointing to the same image
the deletion of latest will also permanently remove v1.2.3.

Delete