Repository | Description | Use Case |
Minimal hardened base images for running pre-built applications | Runtime base for compiled applications |
Pull an image from Docker Hub
docker pull bellsoft/<repository>:<image_tag>
Start a container
docker run --name my-app bellsoft/<repository>:<image_tag>
Specify as a base image in a Dockerfile:
FROM bellsoft/<repository>:<image_tag>
Example usage
# Pull the latest hardened Java runtime
docker pull bellsoft/hardened-liberica-runtime-container:jdk-21-glibc
# Run with your application
docker run -v /path/to/app:/app bellsoft/hardened-liberica-runtime-container:jdk-21-glibc java -jar /app/myapp.jar
# Use in a Dockerfile
FROM bellsoft/hardened-liberica-runtime-container:jdk-21-glibc
Repository | Description | Use Case |
Minimal hardened base images for running pre-built applications | Runtime base for compiled applications |
Tags:
Repository | Description | JDK Types Available |
Hardened Liberica JDK Lite and JRE Lite optimized for Cloud | jdk, jdk-all, jre |
Java images follow the <JDK type>-<Java version>-[crac]-[cds]-<libc> pattern:
JDK Types:
Optional Features:
Examples:
Java Runtime Tags:
Tags follow the <JDK type>-<Java version>-[crac]-[cds]-<libc> structure:
Available Java Versions:
8, 11, 17, 21, 24Examples:
Repository | Description |
Hardened Liberica Native Image Kit (NIK) |
NIK images follow the jdk-<Java version>-nik-<NIK version>-<libc> pattern:
Examples:
Native Image Kit Tags: Tags follow the jdk-<Java version>-nik-<NIK version>-<libc> structure:
Repository | Description | Language/Runtime |
Hardened Python with basic utilities (pip, setuptools, wheel) | Python 3.x |
Python Tags:
Repository | Description | Language/Runtime |
Hardened Go compiler and runtime for building applications | Go 1.x |
Go Tags:
Repository | Description | Language/Runtime |
Hardened GCC compiler, tools, and libraries for C/C++ development | GCC |
GCC Tags:
All hardened images support multiple architectures:
The appropriate architecture will be automatically selected based on your platform.
Note: All hardened images support multiple architectures. The appropriate architecture will be automatically selected based on your platform.
Important: It is the image user's responsibility to ensure that any use of BellSoft hardened container images complies with all relevant licenses for software contained within the images.
All BellSoft hardened container images contain various software components distributed under different licenses. The table below summarizes the primary licenses for each image type:
Repository | Primary Components | Main Licenses |
Base system libraries, musl/glibc | MIT, LGPL-2.1+ | |
Liberica JDK/JRE, base system | GPL-2.0 with Classpath Exception, MIT | |
Liberica NIK, GraalVM components | GPL-2.0 with Classpath Exception, UPL-1.0 | |
Python runtime, pip, setuptools | Python Software Foundation License, MIT | |
Go compiler and runtime | BSD-3-Clause | |
GCC compiler, C/C++ libraries | GPL-3.0+, LGPL-3.0+ |
Inspect All Licenses in an Image
# List all installed packages with licenses
docker run --rm bellsoft/hardened-liberica-runtime-container:jdk-21-glibc \
grep -E '^[PVL]:' /var/lib/apk/db/installed
Extract License Information by Component
# Get package information (P), version (V), and license (L)
docker run --rm bellsoft/hardened-python:3.12-glibc \
awk '/^P:/{pkg=$2} /^V:/{ver=$2} /^L:/{lic=$2; print pkg, ver, lic}' \
/var/lib/apk/db/installed
Search for Specific License Types
# Find all GPL-licensed components
docker run --rm bellsoft/hardened-gcc:14.3-glibc \
grep -A2 -B2 "GPL" /var/lib/apk/db/installed