sha256:0bd6963c3ba6190948fc708b739738d0dc37455258b5267b278319dee6afde55
2025-07-19 08:48:10 CST
244 MB
/usr/local/openjdk-25
JAVA_VERSION25-ea+32
LANGC.UTF-8
PATH/usr/local/openjdk-25/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
[#000] sha256:59e22667830bf04fb35e15ed9c70023e9d121719bb87f0db7f3159ee7c7e0b8d - 11.05% (26.9 MB)
[#001] sha256:dd59779c43165d50652aeb14db5fc6db602ea5e15dc3a84188861791960fcab4 - 1.58% (3.84 MB)
[#002] sha256:8269079167a1dcc6aec958f108903918abadb58c2d0cd01ad746adf53797f36b - 87.38% (213 MB)
# debian.sh --arch 'amd64' out/ 'bookworm' '@1753056000'
2025-07-19 08:48:10 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
2025-07-19 08:48:10 CST (buildkit.dockerfile.v0)ENV JAVA_HOME=/usr/local/openjdk-25
2025-07-19 08:48:10 CST (buildkit.dockerfile.v0)ENV PATH=/usr/local/openjdk-25/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
2025-07-19 08:48:10 CST (buildkit.dockerfile.v0)ENV LANG=C.UTF-8
2025-07-19 08:48:10 CST (buildkit.dockerfile.v0)ENV JAVA_VERSION=25-ea+32
2025-07-19 08:48:10 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/jdk25/32/GPL/openjdk-25-ea+32_linux-x64_bin.tar.gz'; downloadSha256='a741d5735dc5ce8ad5c77a7e1ce53b73e9c360b3da2e0f090c48f723b82f256a'; ;; 'arm64') downloadUrl='https://download.java.net/java/early_access/jdk25/32/GPL/openjdk-25-ea+32_linux-aarch64_bin.tar.gz'; downloadSha256='2e52b2485e0c452ccf9b911c9d62c4e496fa62a9d7b0dcf9ccfb55d1aa0fd91a'; ;; *) 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
2025-07-19 08:48:10 CST (buildkit.dockerfile.v0)CMD ["jshell"]
sha256:7bcb63d63a304c33f89a10696092c883866870b99d343c01ec5f77e3d6f71061
2025-07-19 08:48:10 CST
241 MB
/usr/local/openjdk-25
JAVA_VERSION25-ea+32
LANGC.UTF-8
PATH/usr/local/openjdk-25/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
[#000] sha256:b3407f3b5b5beb45007b2980ccef71785b08dae5a2dcbdd91272f35c4c5e784f - 11.1% (26.8 MB)
[#001] sha256:f6ff2eaeaff12ef35193e2e48a7e1fd22eaf47c1c400694e26f381e6ecaeafdc - 1.52% (3.66 MB)
[#002] sha256:985e486fda810208f600c6fd51ad2f260f7a7118474c6ebdc7322751ff01c7ee - 87.38% (211 MB)
# debian.sh --arch 'arm64' out/ 'bookworm' '@1753056000'
2025-07-19 08:48:10 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
2025-07-19 08:48:10 CST (buildkit.dockerfile.v0)ENV JAVA_HOME=/usr/local/openjdk-25
2025-07-19 08:48:10 CST (buildkit.dockerfile.v0)ENV PATH=/usr/local/openjdk-25/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
2025-07-19 08:48:10 CST (buildkit.dockerfile.v0)ENV LANG=C.UTF-8
2025-07-19 08:48:10 CST (buildkit.dockerfile.v0)ENV JAVA_VERSION=25-ea+32
2025-07-19 08:48:10 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/jdk25/32/GPL/openjdk-25-ea+32_linux-x64_bin.tar.gz'; downloadSha256='a741d5735dc5ce8ad5c77a7e1ce53b73e9c360b3da2e0f090c48f723b82f256a'; ;; 'arm64') downloadUrl='https://download.java.net/java/early_access/jdk25/32/GPL/openjdk-25-ea+32_linux-aarch64_bin.tar.gz'; downloadSha256='2e52b2485e0c452ccf9b911c9d62c4e496fa62a9d7b0dcf9ccfb55d1aa0fd91a'; ;; *) 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
2025-07-19 08:48:10 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.