New Oracle GraalVM Container Images

September 5, 2023 | 2 minute read
Text Size 100%:

Today we're announcing the availability of Oracle GraalVM container images in Oracle Container Registry (OCR) under the GraalVM Free Terms and Conditions (GFTC) license. Developers and organizations can now easily pull Oracle GraalVM container images for both runtime deployment and development use case.

Repositories

Container images for both Oracle GraalVM for JDK 17 and Oracle GraalVM for JDK 20 are available in two OCR repositories: 'jdk' and 'native-image'.  Both repositories provide container images for AMD64 and AArch64 processor architectures and a choice of Oracle Linux versions 7, 8 or 9.

jdk

This repository provides container images with Oracle GraalVM JDK which can be used to both compile and deploy Java applications. Image tags let you select the Java version and Oracle Linux version.

native-image

This repository provides container images with the GraalVM native-image utility along with all tools required to compile applications into native Linux executables.  Image tags let you select the Java version and Oracle Linux version as well as variants that include the musl libc toolchain for the creation of fully statically linked executables. These images are commonly used in multi-stage Docker builds to compile applications into executables that are then packaged in a light weight container image.

Pulling Images

If you want to pull the latest Oracle GraalVM for JDK 17 or JDK 20 update, you can just specify the JDK version as the tag, for example:

docker pull container-registry.oracle.com/graalvm/jdk:17 
docker pull container-registry.oracle.com/graalvm/jdk:20

Of course over time these tags will return different Oracle GraalVM releases as new versions become available.  Fortunately, each repository also provides tags that let you choose the level of stability you need including the Java major, minor, and build number and the Oracle Linux version. For example, the following is fully specified and stable, and will always return the same container image:

container-registry.oracle.com/graalvm/native-image:17.0.8-ol9-20230904

For Native Image, you can add '-muslib' after the JDK version for an image that includes the musl libc toolchain.  For example, 

docker pull container-registry.oracle.com/graalvm/native-image:17-muslib 
docker pull container-registry.oracle.com/graalvm/native-image:17.0.8-muslib

Getting Started

Oracle GraalVM container images are available in the Oracle Container Registry.  Other Oracle GraalVM downloads are available on the Java Downloads page.  To learn more, see:

Photo by Paul Teysen on Unsplash

Shaun Smith

Shaun Smith leads product management of Oracle Lab's GraalVM.


Previous Post

Moving Java Forward at Oracle CloudWorld 2023

Sharat Chander | 6 min read

Next Post


Oracle CloudWorld 2023: Managing Java Deployments at Scale with OCI Java Management Service

Sanju Nair | 3 min read