Oracle and Temurin JDKs in series 25 and 27, with ZGC enabled, slim jlink runtimes for downstream images, and optional JMX metrics.
- Runtime CA certificate import
- Compromised certificate authorities removed from the JDK truststore
- JDK from upstream tarball with distribution choice
- Opt-in Prometheus metrics via JMX
- Production-tuned JVM flags
- Slim Java runtime for application images
It also inherits the features of B19 / Ubuntu — see Features for the full list.
- Container image
ghcr.io/damian-buho/b19/java:oracle-25 - Container image
ghcr.io/damian-buho/b19/java:oracle-27 - Container image
ghcr.io/damian-buho/b19/java:temurin-25 - Container image
ghcr.io/damian-buho/b19/java:temurin-27 - Container image
damianbuho/b19-java:oracle-25 - Container image
damianbuho/b19-java:oracle-27 - Container image
damianbuho/b19-java:temurin-25 - Container image
damianbuho/b19-java:temurin-27
Pull the published container image:
docker pull ghcr.io/damian-buho/b19/java:oracle-25docker pull damianbuho/b19-java:oracle-25Distribution: oracle | temurin
Series: 25 | 27
Stable releases also publish X.Y.Z, X.Y and X tags — pull the precision you want to pin.
If the registries above are unreachable, pull from the origin instead:
docker pull kiota.ch/b19/java:oracle-25Distribution: oracle | temurin
Series: 25 | 27
Build on top of this image:
FROM ghcr.io/damian-buho/b19/java:oracle-25FROM damianbuho/b19-java:oracle-25Distribution: oracle | temurin
Series: 25 | 27
For the recommended multi-stage pattern and the build-hook system (build.d), scaffold a derivative with b19/scripts/scaffold.sh from m6e/b19.
Clone the repository with its submodules:
git clone --recurse-submodules https://github.com/damian-buho/b19-java java && cd javaBuild the container image locally:
make container-buildRun make with no arguments for the default target; run make help to list every target.
For the local dev loop, make dev-container brings up the dev-container.
Pipeline entry points:
make analyzed— Run the heavy analysis sweep (mutation testing, benchmarks)make audited— Re-scan the pinned dependencies and published artifacts for new vulnerabilitiesmake check-outdated— Report every pinned dependency that lags upstreammake release-is-ready— Run the pseudo-CI pipeline locally — build, test and scan, without publishing
This project is licensed under MIT — see the LICENSE file for details.