bellsoft/liberica-native-image-kit-container
Alpaquita based image for Liberica Native Image Kit.
10K+
This repository contains Alpaquita images with Liberica Native Image Kit (NIK), a utility for converting JVM applications into native executables with almost instant startup time, and Alpaquita Linux.
Alpaquita Linux is a lightweight operating system optimized for the deployment of cloud native applications. It is an optimal solution for running applications with various workloads and is characterized by
Alpaquita Linux requires a small amount of resources to run. The extra modules and additional packages can be installed from Alpaquita apk repository depending on the project requirements. Alpaquita comes in two versions: one based on optimized musl libc, and the other one on glibc libc.
Developer and maintainer: BellSoft
For documentation and support information, refer to the official page.
There are several types of tags pointing to the image contents: the Java version (NIK supports only Java 11 and 17), the NIK version, and the Alpaquita libc implementation, musl or glibc. Our musl perf is 100% compatible with stock musl, so if you have previously utilized a musl-based system such as Alpine, the migration won’t cause any issues. In case your OS is glibc-based and switching libc is off the table, consider Alpaquita Linux with glibc, which is more performant than popular glibc-based systems in some cases. For more information on Alpaquita Linux performance, refer to the comparative study overview.
Each Alpaquita libc implementation has two versions: LTS or Stream, the latter being an upstream development branch. The ‘latest’ tag points to the latest version of an image. Image name structure: [JDK type]-X-nik-Y-[OS version]-[libc type], where X is the Java version, and Y is the NIK version.
For example, bellsoft/liberica-native-image-kit-container:jdk-17-nik-22.2-stream-musl is a container with Liberica NIK version 22.2 for Java 17 and the latest version of musl-based Alpaquita Stream.
Use an appropriate NIK container to create a native image and then run it in a desired environment. E.g., you can use a jdk-17-nik-22-musl container to build a native image and put it in a container created from alpaquita-linux-base:stream-musl.
The repository supports Native Image Kit 24 (with Java 22 and 23), Native Image Kit 23 (with Java 17 and 21) and Native Image Kit 22 (with Java 11 and 17), and for each Alpaquita Linux libc type (glibc, musl) there are images:
For example, "jdk-17-nik-23-musl" is a Native Image Kit 23 with Java 17 image based on Alpaquita Linux Musl.
There also exist Native Image Kit 23 and 24 debug images, which include NIK, Apache Maven and GNU GDB debugger:
As with all Docker images, these also contain other software, which may be distributed under other licenses.
The list of installed software components and their licenses can be retrieved by executing the apk list -I
command in the image.
As for any pre-built image usage, it is the image user's responsibility to ensure that any use of this image complies with any relevant licenses for all software contained within.
docker pull bellsoft/liberica-native-image-kit-container