sha256:438a3e6b4cd9f74ab187b578bdd1ac0ebc2ef5750298b0a2a1bc7756321b2f6e
2026-01-21 02:47:53 CST
248 MB
/usr/local/openjdk-26
JAVA_VERSION26-ea+31
LANGC.UTF-8
PATH/usr/local/openjdk-26/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
[#000] sha256:c02d17997ce3d2c82e082235ea0b5152d06ee659c4e2fabcf1e0079312f1bcde - 10.85% (26.9 MB)
[#001] sha256:5d8600b4836437ca053b688daec2dcd773a2734a8dd46efe2ec673f501265ac1 - 1.55% (3.84 MB)
[#002] sha256:267cd9b7364fc71975c690579216e9ed0950cbff2afbe8bff932150b53364f5d - 87.61% (217 MB)
# debian.sh --arch 'amd64' out/ 'bookworm' '@1768176000'
2026-01-21 02:47:42 CST (buildkit.dockerfile.v0)RUN /bin/sh -c set -eux; apt-get update; apt-get install -y --no-install-recommends ca-certificates p11-kit ; rm -rf /var/lib/apt/lists/* # buildkit
2026-01-21 02:47:53 CST (buildkit.dockerfile.v0)ENV JAVA_HOME=/usr/local/openjdk-26
2026-01-21 02:47:53 CST (buildkit.dockerfile.v0)ENV PATH=/usr/local/openjdk-26/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
2026-01-21 02:47:53 CST (buildkit.dockerfile.v0)ENV LANG=C.UTF-8
2026-01-21 02:47:53 CST (buildkit.dockerfile.v0)ENV JAVA_VERSION=26-ea+31
2026-01-21 02:47:53 CST (buildkit.dockerfile.v0)RUN /bin/sh -c set -eux; arch="$(dpkg --print-architecture)"; case "$arch" in 'amd64') downloadUrl='https://download.java.net/java/early_access/jdk26/31/GPL/openjdk-26-ea+31_linux-x64_bin.tar.gz'; downloadSha256='bfc006ca65cf590a40d808e5dc5cc973b98e11e309d0efa5dc36340c8b3ffdbb'; ;; 'arm64') downloadUrl='https://download.java.net/java/early_access/jdk26/31/GPL/openjdk-26-ea+31_linux-aarch64_bin.tar.gz'; downloadSha256='3b9511be1b72db3be1c49c25cbecda90f37642003c9844f7d363455ad702ff7b'; ;; *) echo >&2 "error: unsupported architecture: '$arch'"; exit 1 ;; esac; savedAptMark="$(apt-mark showmanual)"; apt-get update; apt-get install -y --no-install-recommends wget ; rm -rf /var/lib/apt/lists/*; wget --progress=dot:giga -O openjdk.tgz "$downloadUrl"; echo "$downloadSha256 *openjdk.tgz" | sha256sum --strict --check -; mkdir -p "$JAVA_HOME"; tar --extract --file openjdk.tgz --directory "$JAVA_HOME" --strip-components 1 --no-same-owner ; rm openjdk.tgz*; apt-mark auto '.*' > /dev/null; [ -z "$savedAptMark" ] || apt-mark manual $savedAptMark > /dev/null; apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false; { echo '#!/usr/bin/env bash'; echo 'set -Eeuo pipefail'; echo 'trust extract --overwrite --format=java-cacerts --filter=ca-anchors --purpose=server-auth "$JAVA_HOME/lib/security/cacerts"'; } > /etc/ca-certificates/update.d/docker-openjdk; chmod +x /etc/ca-certificates/update.d/docker-openjdk; /etc/ca-certificates/update.d/docker-openjdk; find "$JAVA_HOME/lib" -name '*.so' -exec dirname '{}' ';' | sort -u > /etc/ld.so.conf.d/docker-openjdk.conf; ldconfig; java -Xshare:dump; fileEncoding="$(echo 'System.out.println(System.getProperty("file.encoding"))' | jshell -s -)"; [ "$fileEncoding" = 'UTF-8' ]; rm -rf ~/.java; javac --version; java --version # buildkit
2026-01-21 02:47:53 CST (buildkit.dockerfile.v0)CMD ["jshell"]
sha256:49b231f3fbed386710ec6b8cd22b5a3a55d421be36baf1805f3ea05a4c3bb9f1
2026-01-21 02:47:11 CST
246 MB
/usr/local/openjdk-26
JAVA_VERSION26-ea+31
LANGC.UTF-8
PATH/usr/local/openjdk-26/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
[#000] sha256:33bdc9671af8942d96d2f78f67aeec06580065dde1272decac3732689ec7c0e8 - 10.9% (26.8 MB)
[#001] sha256:2a3e34db689875e76a4e68f4fcb6d3564e3baee60a895783337b88045cf43175 - 1.49% (3.67 MB)
[#002] sha256:8792e5c097c55dc4042789b740f1e000047116f8949d834a450fb3d17b093fc2 - 87.61% (215 MB)
# debian.sh --arch 'arm64' out/ 'bookworm' '@1768176000'
2026-01-21 02:46:59 CST (buildkit.dockerfile.v0)RUN /bin/sh -c set -eux; apt-get update; apt-get install -y --no-install-recommends ca-certificates p11-kit ; rm -rf /var/lib/apt/lists/* # buildkit
2026-01-21 02:47:11 CST (buildkit.dockerfile.v0)ENV JAVA_HOME=/usr/local/openjdk-26
2026-01-21 02:47:11 CST (buildkit.dockerfile.v0)ENV PATH=/usr/local/openjdk-26/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
2026-01-21 02:47:11 CST (buildkit.dockerfile.v0)ENV LANG=C.UTF-8
2026-01-21 02:47:11 CST (buildkit.dockerfile.v0)ENV JAVA_VERSION=26-ea+31
2026-01-21 02:47:11 CST (buildkit.dockerfile.v0)RUN /bin/sh -c set -eux; arch="$(dpkg --print-architecture)"; case "$arch" in 'amd64') downloadUrl='https://download.java.net/java/early_access/jdk26/31/GPL/openjdk-26-ea+31_linux-x64_bin.tar.gz'; downloadSha256='bfc006ca65cf590a40d808e5dc5cc973b98e11e309d0efa5dc36340c8b3ffdbb'; ;; 'arm64') downloadUrl='https://download.java.net/java/early_access/jdk26/31/GPL/openjdk-26-ea+31_linux-aarch64_bin.tar.gz'; downloadSha256='3b9511be1b72db3be1c49c25cbecda90f37642003c9844f7d363455ad702ff7b'; ;; *) echo >&2 "error: unsupported architecture: '$arch'"; exit 1 ;; esac; savedAptMark="$(apt-mark showmanual)"; apt-get update; apt-get install -y --no-install-recommends wget ; rm -rf /var/lib/apt/lists/*; wget --progress=dot:giga -O openjdk.tgz "$downloadUrl"; echo "$downloadSha256 *openjdk.tgz" | sha256sum --strict --check -; mkdir -p "$JAVA_HOME"; tar --extract --file openjdk.tgz --directory "$JAVA_HOME" --strip-components 1 --no-same-owner ; rm openjdk.tgz*; apt-mark auto '.*' > /dev/null; [ -z "$savedAptMark" ] || apt-mark manual $savedAptMark > /dev/null; apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false; { echo '#!/usr/bin/env bash'; echo 'set -Eeuo pipefail'; echo 'trust extract --overwrite --format=java-cacerts --filter=ca-anchors --purpose=server-auth "$JAVA_HOME/lib/security/cacerts"'; } > /etc/ca-certificates/update.d/docker-openjdk; chmod +x /etc/ca-certificates/update.d/docker-openjdk; /etc/ca-certificates/update.d/docker-openjdk; find "$JAVA_HOME/lib" -name '*.so' -exec dirname '{}' ';' | sort -u > /etc/ld.so.conf.d/docker-openjdk.conf; ldconfig; java -Xshare:dump; fileEncoding="$(echo 'System.out.println(System.getProperty("file.encoding"))' | jshell -s -)"; [ "$fileEncoding" = 'UTF-8' ]; rm -rf ~/.java; javac --version; java --version # buildkit
2026-01-21 02:47:11 CST (buildkit.dockerfile.v0)CMD ["jshell"]
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.