Namespace
library
Image / Tag
gradle:9.4-jdk-25-and-25-graal-noble
Content Digest
sha256:cd34d47b884fd7ec597b6115cc3328f8bf387fe36efbdcab67df6afd41ecb5ea
Details
Created

2026-03-20 17:12:49 UTC

Size

627 MB

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

Environment
GRADLE_HOME

/opt/gradle

GRADLE_VERSION

9.4.1

JAVA_CURRENT_HOME

/opt/java/graalvm25

JAVA_HOME

/opt/java/graalvm

JAVA_LTS_HOME

/opt/java/graalvm25

PATH

/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin


Layers

[#000] sha256:817807f3c64e0b90b66edc7d90297f121cad2a7c2a3ee05a731557762f91e6c7 - 4.52% (28.4 MB)

[#001] sha256:cd21d0cdff42c73119c98e545d1625b6adbd7941ec846f07edd1f8e093e0d2c7 - 0.0% (1.38 KB)

[#002] sha256:4f4fb700ef54461cfa02571ae0db9a0dc1e0cdb5577484a6d75e68dc38e8acc1 - 0.0% (32 Bytes)

[#003] sha256:50895b79b79cdb149bb111ff6a55bf832c5cf38d6c94033b3fa9679fbef42654 - 22.64% (142 MB)

[#004] sha256:4daf1523f7a38ec7b2d0c3fc463fdc818de62b40f4a948fbf7c97ceb726f7126 - 51.86% (325 MB)

[#005] sha256:33d55d574988a3986bb746141b51aae82565eeeb50543f84924f1e3e22ef11a1 - 20.97% (131 MB)

[#006] sha256:b2531009177758dd32a8e9981e913dbd0acba706aa31dd0bd7f131e372dffb38 - 0.0% (25 KB)


History
2026-02-23 17:17:53 UTC

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

2026-02-23 17:17:53 UTC

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

2026-02-23 17:17:53 UTC

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

2026-02-23 17:17:53 UTC

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

2026-02-23 17:17:55 UTC

/bin/sh -c #(nop) ADD file:3f78aa860931e0853077f09eb31eddbeeef8a9dd70977305b4876aa176770721 in /

2026-02-23 17:17:56 UTC

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

2026-03-20 17:11:59 UTC (buildkit.dockerfile.v0)

CMD ["gradle"]

2026-03-20 17:11:59 UTC (buildkit.dockerfile.v0)

ENV GRADLE_HOME=/opt/gradle

2026-03-20 17:11:59 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -o errexit -o nounset && echo "Renaming ubuntu user and group to gradle" && groupmod --new-name gradle ubuntu && mkdir /home/gradle && usermod --login gradle --home /home/gradle --groups gradle ubuntu && chown gradle /home/gradle && mkdir /home/gradle/.gradle && chown --recursive gradle:gradle /home/gradle && chmod --recursive o+rwx /home/gradle && echo "Symlinking root Gradle cache to gradle Gradle cache" && ln --symbolic /home/gradle/.gradle /root/.gradle && echo "Ensuring Gradle detects installed JDKs" && echo "org.gradle.java.installations.auto-detect=false" > /home/gradle/.gradle/gradle.properties && echo "org.gradle.java.installations.auto-download=false" >> /home/gradle/.gradle/gradle.properties && echo "org.gradle.java.installations.fromEnv=JAVA_LTS_HOME,JAVA_CURRENT_HOME" >> /home/gradle/.gradle/gradle.properties # buildkit

2026-03-20 17:11:59 UTC (buildkit.dockerfile.v0)

VOLUME [/home/gradle/.gradle]

2026-03-20 17:11:59 UTC (buildkit.dockerfile.v0)

WORKDIR /home/gradle

2026-03-20 17:12:35 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -o errexit -o nounset && export DEBIAN_FRONTEND=noninteractive && apt-get update && apt-get install --yes --no-install-recommends make curl wget tar binutils ca-certificates fontconfig locales p11-kit tzdata unzip gcc libc-dev libz-dev zlib1g-dev brz git git-lfs mercurial openssh-client subversion && rm --recursive --force /var/lib/apt/lists/* && echo "Testing common utilities" && which awk && which curl && which cut && which grep && which gunzip && which sha256sum && which sed && which tar && which tr && which unzip && which wget && echo "Testing VCSes" && which brz && which git && which git-lfs && which hg && which svn # buildkit

2026-03-20 17:12:35 UTC (buildkit.dockerfile.v0)

ENV JAVA_HOME=/opt/java/graalvm

2026-03-20 17:12:35 UTC (buildkit.dockerfile.v0)

ENV JAVA_LTS_HOME=/opt/java/graalvm25

2026-03-20 17:12:35 UTC (buildkit.dockerfile.v0)

ENV JAVA_CURRENT_HOME=/opt/java/graalvm25

2026-03-20 17:12:47 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -o errexit -o nounset && mkdir /opt/java && echo "Downloading LTS GraalVM" && JAVA_LTS_VERSION=25.0.2 && GRAALVM_LTS_AMD64_DOWNLOAD_SHA256=e0be791c8fda4d03b6b0a0cb824fef3149736170057b3a515252b44419606af0 && GRAALVM_LTS_AARCH64_DOWNLOAD_SHA256=b4580d9f223d0a4b3a1757e58b18ff4c1db950e67e105fc5cb741457d2384a71 && ARCHITECTURE=$(dpkg --print-architecture) && if [ "${ARCHITECTURE}" = "amd64" ]; then GRAALVM_ARCHITECTURE=linux-x64; fi && if [ "${ARCHITECTURE}" = "arm64" ]; then GRAALVM_ARCHITECTURE=linux-aarch64; fi && GRAALVM_PKG=https://github.com/graalvm/graalvm-ce-builds/releases/download/jdk-${JAVA_LTS_VERSION}/graalvm-community-jdk-${JAVA_LTS_VERSION}_${GRAALVM_ARCHITECTURE}_bin.tar.gz && wget --no-verbose --output-document=graalvm.tar.gz "${GRAALVM_PKG}" && echo "Checking LTS GraalVM download hash" && if [ "${ARCHITECTURE}" = "amd64" ]; then GRAALVM_DOWNLOAD_SHA256="${GRAALVM_LTS_AMD64_DOWNLOAD_SHA256}"; fi && if [ "${ARCHITECTURE}" = "arm64" ]; then GRAALVM_DOWNLOAD_SHA256="${GRAALVM_LTS_AARCH64_DOWNLOAD_SHA256}"; fi && echo "${GRAALVM_DOWNLOAD_SHA256} *graalvm.tar.gz" | sha256sum --check - && echo "Installing LTS GraalVM" && tar --extract --gunzip --file graalvm.tar.gz && rm graalvm.tar.gz && mv graalvm-* "${JAVA_LTS_HOME}" && echo "Downloading current GraalVM" && JAVA_CURRENT_VERSION=25.0.2 && GRAALVM_CURRENT_AMD64_DOWNLOAD_SHA256=e0be791c8fda4d03b6b0a0cb824fef3149736170057b3a515252b44419606af0 && GRAALVM_CURRENT_AARCH64_DOWNLOAD_SHA256=b4580d9f223d0a4b3a1757e58b18ff4c1db950e67e105fc5cb741457d2384a71 && if [ "${JAVA_LTS_VERSION}" != "${JAVA_CURRENT_VERSION}" ]; then ARCHITECTURE=$(dpkg --print-architecture) && if [ "${ARCHITECTURE}" = "amd64" ]; then GRAALVM_ARCHITECTURE=linux-x64; fi && if [ "${ARCHITECTURE}" = "arm64" ]; then GRAALVM_ARCHITECTURE=linux-aarch64; fi && GRAALVM_PKG=https://github.com/graalvm/graalvm-ce-builds/releases/download/jdk-${JAVA_CURRENT_VERSION}/graalvm-community-jdk-${JAVA_CURRENT_VERSION}_${GRAALVM_ARCHITECTURE}_bin.tar.gz && wget --no-verbose --output-document=graalvm.tar.gz "${GRAALVM_PKG}" && echo "Checking current GraalVM download hash" && if [ "${ARCHITECTURE}" = "amd64" ]; then GRAALVM_DOWNLOAD_SHA256="${GRAALVM_CURRENT_AMD64_DOWNLOAD_SHA256}"; fi && if [ "${ARCHITECTURE}" = "arm64" ]; then GRAALVM_DOWNLOAD_SHA256="${GRAALVM_CURRENT_AARCH64_DOWNLOAD_SHA256}"; fi && echo "${GRAALVM_DOWNLOAD_SHA256} *graalvm.tar.gz" | sha256sum --check - && echo "Installing current GraalVM" && tar --extract --gunzip --file graalvm.tar.gz && rm graalvm.tar.gz && mv graalvm-* "${JAVA_CURRENT_HOME}"; fi && echo "Default Java to LTS GraalVM" && ln --symbolic "${JAVA_LTS_HOME}" /opt/java/graalvm && for bin in "$JAVA_LTS_HOME/bin/"*; do base="$(basename "$bin")"; [ ! -e "/usr/bin/$base" ]; update-alternatives --install "/usr/bin/${base}" "${base}" "${bin}" 1; done && echo "Testing GraalVM installation" && java --version && javac --version && native-image --version # buildkit

2026-03-20 17:12:47 UTC (buildkit.dockerfile.v0)

ENV GRADLE_VERSION=9.4.1

2026-03-20 17:12:47 UTC (buildkit.dockerfile.v0)

ARG GRADLE_DOWNLOAD_SHA256=2ab2958f2a1e51120c326cad6f385153bb11ee93b3c216c5fccebfdfbb7ec6cb

2026-03-20 17:12:49 UTC (buildkit.dockerfile.v0)

RUN |1 GRADLE_DOWNLOAD_SHA256=2ab2958f2a1e51120c326cad6f385153bb11ee93b3c216c5fccebfdfbb7ec6cb /bin/sh -c set -o errexit -o nounset && echo "Downloading Gradle" && wget --no-verbose --output-document=gradle.zip "https://services.gradle.org/distributions/gradle-${GRADLE_VERSION}-bin.zip" && echo "Checking Gradle download hash" && echo "${GRADLE_DOWNLOAD_SHA256} *gradle.zip" | sha256sum --check - && echo "Installing Gradle" && unzip gradle.zip && rm gradle.zip && mv "gradle-${GRADLE_VERSION}" "${GRADLE_HOME}/" && ln --symbolic "${GRADLE_HOME}/bin/gradle" /usr/bin/gradle # buildkit

2026-03-20 17:12:49 UTC (buildkit.dockerfile.v0)

USER gradle

2026-03-20 17:12:49 UTC (buildkit.dockerfile.v0)

RUN |1 GRADLE_DOWNLOAD_SHA256=2ab2958f2a1e51120c326cad6f385153bb11ee93b3c216c5fccebfdfbb7ec6cb /bin/sh -c set -o errexit -o nounset && echo "Testing Gradle installation" && gradle --stacktrace --debug --version # buildkit

2026-03-20 17:12:49 UTC (buildkit.dockerfile.v0)

USER root

Details
Created

2026-03-20 17:26:57 UTC

Size

598 MB

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

Environment
GRADLE_HOME

/opt/gradle

GRADLE_VERSION

9.4.1

JAVA_CURRENT_HOME

/opt/java/graalvm25

JAVA_HOME

/opt/java/graalvm

JAVA_LTS_HOME

/opt/java/graalvm25

PATH

/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin


Layers

[#000] sha256:86790fc5660dcd86928b849ae0826aba701bf9e005e92c8f9e06c917e82c87f7 - 4.61% (27.5 MB)

[#001] sha256:29d28bfbb971e7c8b8ca5f7fb6fa72bf72d3ca53c4f8211aa94e78925b9b9b6a - 0.0% (1.38 KB)

[#002] sha256:4f4fb700ef54461cfa02571ae0db9a0dc1e0cdb5577484a6d75e68dc38e8acc1 - 0.0% (32 Bytes)

[#003] sha256:4dbe96415d3879a11cfbab17d585a0cc93b8598964f1e79ace02b7dfee54fd62 - 22.97% (137 MB)

[#004] sha256:7e9289b87f6e7d4d5bd2f5820445bacd81a818463ad0ac51fde7aacb3c0f3578 - 50.43% (301 MB)

[#005] sha256:c1b1fa3b182cf04ef1745741d59c81a7a819547f8961a5f9c549e209e3f35364 - 21.99% (131 MB)

[#006] sha256:f409f7fea1ce19048557eccb7898b1c7c73f4274c233ee08490879110d3308d3 - 0.0% (28.6 KB)


History
2026-02-23 17:19:30 UTC

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

2026-02-23 17:19:30 UTC

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

2026-02-23 17:19:30 UTC

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

2026-02-23 17:19:30 UTC

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

2026-02-23 17:19:32 UTC

/bin/sh -c #(nop) ADD file:2763d61bc43bd178306ae0d4151c2477166ebf199b8d7294d9ea410f9891993f in /

2026-02-23 17:19:33 UTC

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

2026-03-20 17:26:05 UTC (buildkit.dockerfile.v0)

CMD ["gradle"]

2026-03-20 17:26:05 UTC (buildkit.dockerfile.v0)

ENV GRADLE_HOME=/opt/gradle

2026-03-20 17:26:05 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -o errexit -o nounset && echo "Renaming ubuntu user and group to gradle" && groupmod --new-name gradle ubuntu && mkdir /home/gradle && usermod --login gradle --home /home/gradle --groups gradle ubuntu && chown gradle /home/gradle && mkdir /home/gradle/.gradle && chown --recursive gradle:gradle /home/gradle && chmod --recursive o+rwx /home/gradle && echo "Symlinking root Gradle cache to gradle Gradle cache" && ln --symbolic /home/gradle/.gradle /root/.gradle && echo "Ensuring Gradle detects installed JDKs" && echo "org.gradle.java.installations.auto-detect=false" > /home/gradle/.gradle/gradle.properties && echo "org.gradle.java.installations.auto-download=false" >> /home/gradle/.gradle/gradle.properties && echo "org.gradle.java.installations.fromEnv=JAVA_LTS_HOME,JAVA_CURRENT_HOME" >> /home/gradle/.gradle/gradle.properties # buildkit

2026-03-20 17:26:05 UTC (buildkit.dockerfile.v0)

VOLUME [/home/gradle/.gradle]

2026-03-20 17:26:05 UTC (buildkit.dockerfile.v0)

WORKDIR /home/gradle

2026-03-20 17:26:44 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -o errexit -o nounset && export DEBIAN_FRONTEND=noninteractive && apt-get update && apt-get install --yes --no-install-recommends make curl wget tar binutils ca-certificates fontconfig locales p11-kit tzdata unzip gcc libc-dev libz-dev zlib1g-dev brz git git-lfs mercurial openssh-client subversion && rm --recursive --force /var/lib/apt/lists/* && echo "Testing common utilities" && which awk && which curl && which cut && which grep && which gunzip && which sha256sum && which sed && which tar && which tr && which unzip && which wget && echo "Testing VCSes" && which brz && which git && which git-lfs && which hg && which svn # buildkit

2026-03-20 17:26:44 UTC (buildkit.dockerfile.v0)

ENV JAVA_HOME=/opt/java/graalvm

2026-03-20 17:26:44 UTC (buildkit.dockerfile.v0)

ENV JAVA_LTS_HOME=/opt/java/graalvm25

2026-03-20 17:26:44 UTC (buildkit.dockerfile.v0)

ENV JAVA_CURRENT_HOME=/opt/java/graalvm25

2026-03-20 17:26:54 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -o errexit -o nounset && mkdir /opt/java && echo "Downloading LTS GraalVM" && JAVA_LTS_VERSION=25.0.2 && GRAALVM_LTS_AMD64_DOWNLOAD_SHA256=e0be791c8fda4d03b6b0a0cb824fef3149736170057b3a515252b44419606af0 && GRAALVM_LTS_AARCH64_DOWNLOAD_SHA256=b4580d9f223d0a4b3a1757e58b18ff4c1db950e67e105fc5cb741457d2384a71 && ARCHITECTURE=$(dpkg --print-architecture) && if [ "${ARCHITECTURE}" = "amd64" ]; then GRAALVM_ARCHITECTURE=linux-x64; fi && if [ "${ARCHITECTURE}" = "arm64" ]; then GRAALVM_ARCHITECTURE=linux-aarch64; fi && GRAALVM_PKG=https://github.com/graalvm/graalvm-ce-builds/releases/download/jdk-${JAVA_LTS_VERSION}/graalvm-community-jdk-${JAVA_LTS_VERSION}_${GRAALVM_ARCHITECTURE}_bin.tar.gz && wget --no-verbose --output-document=graalvm.tar.gz "${GRAALVM_PKG}" && echo "Checking LTS GraalVM download hash" && if [ "${ARCHITECTURE}" = "amd64" ]; then GRAALVM_DOWNLOAD_SHA256="${GRAALVM_LTS_AMD64_DOWNLOAD_SHA256}"; fi && if [ "${ARCHITECTURE}" = "arm64" ]; then GRAALVM_DOWNLOAD_SHA256="${GRAALVM_LTS_AARCH64_DOWNLOAD_SHA256}"; fi && echo "${GRAALVM_DOWNLOAD_SHA256} *graalvm.tar.gz" | sha256sum --check - && echo "Installing LTS GraalVM" && tar --extract --gunzip --file graalvm.tar.gz && rm graalvm.tar.gz && mv graalvm-* "${JAVA_LTS_HOME}" && echo "Downloading current GraalVM" && JAVA_CURRENT_VERSION=25.0.2 && GRAALVM_CURRENT_AMD64_DOWNLOAD_SHA256=e0be791c8fda4d03b6b0a0cb824fef3149736170057b3a515252b44419606af0 && GRAALVM_CURRENT_AARCH64_DOWNLOAD_SHA256=b4580d9f223d0a4b3a1757e58b18ff4c1db950e67e105fc5cb741457d2384a71 && if [ "${JAVA_LTS_VERSION}" != "${JAVA_CURRENT_VERSION}" ]; then ARCHITECTURE=$(dpkg --print-architecture) && if [ "${ARCHITECTURE}" = "amd64" ]; then GRAALVM_ARCHITECTURE=linux-x64; fi && if [ "${ARCHITECTURE}" = "arm64" ]; then GRAALVM_ARCHITECTURE=linux-aarch64; fi && GRAALVM_PKG=https://github.com/graalvm/graalvm-ce-builds/releases/download/jdk-${JAVA_CURRENT_VERSION}/graalvm-community-jdk-${JAVA_CURRENT_VERSION}_${GRAALVM_ARCHITECTURE}_bin.tar.gz && wget --no-verbose --output-document=graalvm.tar.gz "${GRAALVM_PKG}" && echo "Checking current GraalVM download hash" && if [ "${ARCHITECTURE}" = "amd64" ]; then GRAALVM_DOWNLOAD_SHA256="${GRAALVM_CURRENT_AMD64_DOWNLOAD_SHA256}"; fi && if [ "${ARCHITECTURE}" = "arm64" ]; then GRAALVM_DOWNLOAD_SHA256="${GRAALVM_CURRENT_AARCH64_DOWNLOAD_SHA256}"; fi && echo "${GRAALVM_DOWNLOAD_SHA256} *graalvm.tar.gz" | sha256sum --check - && echo "Installing current GraalVM" && tar --extract --gunzip --file graalvm.tar.gz && rm graalvm.tar.gz && mv graalvm-* "${JAVA_CURRENT_HOME}"; fi && echo "Default Java to LTS GraalVM" && ln --symbolic "${JAVA_LTS_HOME}" /opt/java/graalvm && for bin in "$JAVA_LTS_HOME/bin/"*; do base="$(basename "$bin")"; [ ! -e "/usr/bin/$base" ]; update-alternatives --install "/usr/bin/${base}" "${base}" "${bin}" 1; done && echo "Testing GraalVM installation" && java --version && javac --version && native-image --version # buildkit

2026-03-20 17:26:54 UTC (buildkit.dockerfile.v0)

ENV GRADLE_VERSION=9.4.1

2026-03-20 17:26:54 UTC (buildkit.dockerfile.v0)

ARG GRADLE_DOWNLOAD_SHA256=2ab2958f2a1e51120c326cad6f385153bb11ee93b3c216c5fccebfdfbb7ec6cb

2026-03-20 17:26:57 UTC (buildkit.dockerfile.v0)

RUN |1 GRADLE_DOWNLOAD_SHA256=2ab2958f2a1e51120c326cad6f385153bb11ee93b3c216c5fccebfdfbb7ec6cb /bin/sh -c set -o errexit -o nounset && echo "Downloading Gradle" && wget --no-verbose --output-document=gradle.zip "https://services.gradle.org/distributions/gradle-${GRADLE_VERSION}-bin.zip" && echo "Checking Gradle download hash" && echo "${GRADLE_DOWNLOAD_SHA256} *gradle.zip" | sha256sum --check - && echo "Installing Gradle" && unzip gradle.zip && rm gradle.zip && mv "gradle-${GRADLE_VERSION}" "${GRADLE_HOME}/" && ln --symbolic "${GRADLE_HOME}/bin/gradle" /usr/bin/gradle # buildkit

2026-03-20 17:26:57 UTC (buildkit.dockerfile.v0)

USER gradle

2026-03-20 17:26:57 UTC (buildkit.dockerfile.v0)

RUN |1 GRADLE_DOWNLOAD_SHA256=2ab2958f2a1e51120c326cad6f385153bb11ee93b3c216c5fccebfdfbb7ec6cb /bin/sh -c set -o errexit -o nounset && echo "Testing Gradle installation" && gradle --stacktrace --debug --version # buildkit

2026-03-20 17:26:57 UTC (buildkit.dockerfile.v0)

USER root

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