Visit Azul.com Support

Running Azul Zulu SA in a Docker Container

Subscriber Availability (SA) builds are tested, certified, and commercially supported Azul Zulu Builds of OpenJDK. These builds are exclusively available for Azul customers and provide additional benefits like security updates beyond community releases, extended platform and configuration support, priority access to critical patches, etc.

SA builds are available in two update types:

  • CPU (Critical Patch Updates): Contain fixes to security vulnerabilities and critical bug fixes only. CPU releases are based on prior-cycle PSU releases with security fixes applied, providing a low-risk deployment option for urgent security updates.

  • PSU (Patch Set Updates): Include all CPU fixes plus additional non-security bug fixes. PSU releases align with OpenJDK quarterly releases, incorporating both security fixes and general improvements.

Check the Release Notes for the latest version numbers of each type.

Use the following instructions to install Azul Zulu SA in a container.

Prerequisites

Install Docker by following the Docker documentation.

Manage Access Tokens

Customers can manage their user token using the Azul token management app on access.azul.com. You need to login with the same credentials used for ftp.azul.com. These tokens can be used in combination with the ftp username to create the basic authentication header required to download from the restricted repositories.

Note
Tokens are not stored and will only be visible when created. Please save them immediately in a safe location. You can revoke a token if it gets compromised or lost.

In the examples below, the following references are used:

  • <username>: Your FTP username.

  • <token>: Access token you created generated in the Azul token management app.

Please contact the Azul Support team ([email protected]) if you need assistance with your tokens.

Note
Tokens for the SA Docker Images are valid for 6 months.

Creating a Docker Image with Zulu SA

  • Get a <username> and <token> as described above.

  • You can check the available image tags on Docker Image Tags.

  • You can pull an image from the repository following these steps:

     
    $ docker login sa.registry.azul.com Username: <username> Password: <token> Login Succeeded $ docker run -it sa.registry.azul.com/zulu-sa-ubuntu:17-jre Unable to find image 'sa.registry.azul.com/zulu-sa-ubuntu:17-jre' locally 17-jre: Pulling from zulu-sa-ubuntu Digest: sha256:0ba81abe4fa8d561f1f78f6090d50ba5a4ca5849046a3fa422103321529e62e1 Status: Downloaded newer image for sa.registry.azul.com/zulu-sa-ubuntu:17-jre root@05c3726b230b:/# java -version openjdk version "17.0.15" 2025-04-15 LTS OpenJDK Runtime Environment Zulu17.58+22-SA (build 17.0.15+6-LTS) OpenJDK 64-Bit Server VM Zulu17.58+22-SA (build 17.0.15+6-LTS, mixed mode, sharing)

Tagging Scheme for SA Images

Each Docker image is tagged using a versioned and alias-based scheme that reflects the underlying Java release, Zulu build, and runtime variant (JDK or JRE). The underlying architecture is not exposed in the tag. All published tags reference multi-architecture images, supporting both amd64 and arm64 transparently.

Fixed Version Tags

Immutable, specific-version tags follow the pattern <zuluversion>-<javaversion>[-jre]:

  • <zuluversion>: Azul Zulu release version (e.g. 24.14).

  • <javaversion>: OpenJDK version (e.g. 24.0.1).

  • -jre: Optional suffix for JRE; if omitted, the image contains the full JDK.

Stability is defined by the minor version of the Zulu release:

  • Odd minor: Critical Patch Update (CPU) release

  • Even minor: Patch Set Update (PSU) release

More details on Azul Zulu versioning is available here.

Examples:

Tag Meaning

24.13-24.0.1

Zulu 24.13 based on OpenJDK 24.0.1
CPU release, JDK, multiarch image

24.13-24.0.1-jre

Zulu 24.13 based on OpenJDK 24.0.1
CPU release, JRE, multiarch image

24.14-24.0.1

Zulu 24.14 based on OpenJDK 24.0.1
PSU release, JDK, multiarch image

24.14-24.0.1-jre

Zulu 24.14 based on OpenJDK 24.0.1
PSU release, JRE, multiarch image

Mutable Alias Tags

To simplify the use of these images and support dynamic "latest" resolution, the following mutable aliases are provided:

Alias Description

24-cpu

Latest Java 24 CPU JDK

24-cpu-jre

Latest Java 24 CPU JRE

24-psu

Latest Java 24 PSU JDK

24-psu-jre

Latest Java 24 PSU JRE

Note
Replace 24 with your required version.