• Java Repositories
  • Java SE Development Kit (JDK) released under Oracle's No-Fee Terms and Conditions

Breadcrumb

Description

# <img src="https://www.oracle.com/a/pr/img/c82-java-logo.gif" alt="Java"/> # JDK No-Fee Terms This repository offers container images of Oracle JDK (Java SE Development Kit) versions available on [www.oracle.com/javadownload](https://www.oracle.com/javadownload) under the [Oracle No-Fee Terms and Conditions](https://java.com/freeuselicense) running on the latest update of [Oracle Linux](https://www.oracle.com/linux/). The Oracle No-Fee Terms and Conditions, subject to the conditions of the license, permits free use for all users – even commercial and production use. Oracle JDK is a supported Java SE implementation; it contains a Java Runtime and the tools required for developing, testing, prototyping, demonstrating, or running your Java applications. # Installation Instructions You can pull the image by running the following command: # docker pull container-registry.oracle.com/java/jdk-no-fee-term:latest Java is installed in `/usr/java/jdk-<$FeatureVersion>` and all binaries, including `java`, `javac`, and `jshell` are available in the path via the `alternatives` tool. The default command for this image is [`jshell`](https://docs.oracle.com/en/java/javase/18/jshell/introduction-jshell.html) which is used to interactively evaluate declarations, statements, and expressions of the Java programming language in a read-eval-print loop (REPL). # JDK Versions Available Oracle makes available, in this repository: * JDK 23: The latest Feature Release, and its quarterly security and performance updates until it gets superseded by JDK 24 in March of 2025. * JDK 21: The current Long Term Support Release, and its quarterly security and performance updates until September of 2026, one year after it has been superseded by the next LTS: JDK 25 LTS. The container images are available for AMD64 and AArch64 systems. Calling `docker pull` without specifying an architecture will download images for the architecture that matches your docker client. You can also specify the desired architecture with the `--platform` option and either `linux/amd64` or `linux/aarch64`. Container images with these same versions and updates to earlier JDK versions are also available, under different license term which do not allow them to be used in production without a commercial license, in Oracle Container Registry in the [java/jdk](https://container-registry.oracle.com/ords/ocr/ba/java/jdk) (JDK 23, 21, 17, and 11) and [java/serverjre](https://container-registry.oracle.com/ords/ocr/ba/java/serverjre) (JDK 8) repositories. ## OS Versions offered The JDK container images are released on the Oracle Linux version recommended by the Oracle Linux team at the time of the initial release of the JDK. If the recommend Oracle Linux version for container images gets updated, newer JDK versions will release in the new Oracle Linux version. At this time the following JDK/Oracle Linux versions are available: | JDK Version | Oracle Linux Version(s) | | ----------- | --------------------------------- | | JDK 23 | Oracle Linux 9 | | JDK 21 | Oracle Linux 8 and Oracle Linux 9 | ## Tags This repository allows users to obtain the latest JDK update for each JDK release available. It also allows user to download container images with older update releases. The tags available are created as follows: * `latest` : Will download the current update release for the newest JDK version offered on the default Oracle Linux version for that release * `<JDKFeatureVersion>[-oraclelinux<OLVersion>]`: e.g. `23`, `21-oraclelinux8`, `21-oraclelinux9`, will download the current update release for the specified JDK version. Adding `-oraclelinux<OLVersion>` allows users to specify the version of Oracle Linux on which the JDK is installed. Refer to the table under *OS Versions Offered* for a list of valid Oracle Linux versions for each JDK feature release. * `<JDKVersion>[-oraclelinux<OLVersion>]`: e,g, `21-ga`, `23.0.1 `,`21.0.4-oraclelinux8`, `21.0.2-oraclelinux8` will download the requested update release for the specified JDK version. Adding `-oraclelinux<OLVersion>` allows users to specify the version of Oracle Linux on which the JDK is installed. Refer to the table under *OS Versions Offered* for a list of valid Oracle Linux versions for each JDK feature release. > Oracle recommends using only the latest update release for each version. Older versions are provided to help developers debug issues in older systems. **They are not updated with the latest security patches and are not recommended for use in production.** # How to use these images The Oracle JDK image can be used as the base image for any application that requires a Java Runtime or as part of a continuous build process to generate smaller custom Java Runtimes with only the modules required by your application by using [jlink](https://docs.oracle.com/en/java/javase/20/docs/specs/man/jlink.html). If you use these images as a base image in your own dockerfiles, you should include `RUN yum -y update && rm -rf /var/cache/yum` to ensure that your images are updated during the build process. # Social media resources * [X](https://twitter.com/java) * [Facebook](https://www.facebook.com/ilovejava/) * [YouTube](https://www.youtube.com/user/java) * [Blogs](https://blogs.oracle.com/java/) # Supported Docker versions These images are offered for Docker version 1.4.1 and higher. # Customer Support Users who need a supported version of Java SE should get a [Java SE Universal Subscription](https://www.oracle.com/java/java-se-subscription.html) which offers support and updates for several JDK versions. The complete list of supported versions can be found on the [Oracle Java SE Support Roadmap](https://www.oracle.com/java/technologies/java-se-support-roadmap.html).

Short URL for Repo

https://container-registry.oracle.com/ords/ocr/ba/java/jdk-no-fee-term

Oracle JDK Container Images License

Your use of the Oracle Java Development Kit (“Oracle JDK”) container images, including any software packages, data or other content provided as part of Oracle JDK container images, is governed by (1) the open source or other license terms included as part of the image; and (2) the separate terms applicable to the software packages included with the Oracle JDK container images as listed in Table 1 below ((1) and (2), collectively, the “Terms of Use”).

The following software packages, if included, are licensed to You under the separate terms specified for the applicable software packages as follows:

TABLE 1:
Package Name License
Oracle JDK (Java SE) https://java.com/freeuselicense
Oracle Linux https://www.oracle.com/downloads/licenses/oracle-linux-license.html

By launching or using the Oracle JDK container images You agree to be bound by the Terms of Use. If You are agreeing to the Terms of Use on behalf of a company or other legal entity, You represent that You have the authority to bind it to the Terms of Use and, in such event, "You" and "Your" as used in the Terms of Use shall refer to such entity. If You are not willing to be bound by the Terms of Use do not launch or access the Oracle JDK container images.

Pull Command for Latest

docker pull

Tags

TagOS/ArchitectureSizePull CommandLast UpdatedImage ID
21.0.5-oraclelinux8linux/amd64293.69 MBdocker pull container-registry.oracle.com/java/jdk-no-fee-term:21.0.5-oraclelinux82 weeks ago3ea25170a245
21.0.5-ol8-amd64linux/amd64293.69 MBdocker pull container-registry.oracle.com/java/jdk-no-fee-term:21.0.5-ol8-amd642 weeks ago3ea25170a245
21.0.5linux/amd64293.69 MBdocker pull container-registry.oracle.com/java/jdk-no-fee-term:21.0.52 weeks ago3ea25170a245
21-oraclelinux8linux/amd64293.69 MBdocker pull container-registry.oracle.com/java/jdk-no-fee-term:21-oraclelinux82 weeks ago3ea25170a245
21linux/amd64293.69 MBdocker pull container-registry.oracle.com/java/jdk-no-fee-term:212 weeks ago3ea25170a245
21.0.5-oraclelinux9linux/amd64303.2 MBdocker pull container-registry.oracle.com/java/jdk-no-fee-term:21.0.5-oraclelinux92 weeks agoaf90cd392cc4
21.0.5-ol9-amd64linux/amd64303.2 MBdocker pull container-registry.oracle.com/java/jdk-no-fee-term:21.0.5-ol9-amd642 weeks agoaf90cd392cc4
21-oraclelinux9linux/amd64303.2 MBdocker pull container-registry.oracle.com/java/jdk-no-fee-term:21-oraclelinux92 weeks agoaf90cd392cc4
latestlinux/amd64346.95 MBdocker pull container-registry.oracle.com/java/jdk-no-fee-term:latest2 weeks ago55564272d2bc
23.0.1-oraclelinux9linux/amd64346.95 MBdocker pull container-registry.oracle.com/java/jdk-no-fee-term:23.0.1-oraclelinux92 weeks ago55564272d2bc
23.0.1-ol9-amd64linux/amd64346.95 MBdocker pull container-registry.oracle.com/java/jdk-no-fee-term:23.0.1-ol9-amd642 weeks ago55564272d2bc
23.0.1linux/amd64346.95 MBdocker pull container-registry.oracle.com/java/jdk-no-fee-term:23.0.12 weeks ago55564272d2bc
23-oraclelinux9linux/amd64346.95 MBdocker pull container-registry.oracle.com/java/jdk-no-fee-term:23-oraclelinux92 weeks ago55564272d2bc
23linux/amd64346.95 MBdocker pull container-registry.oracle.com/java/jdk-no-fee-term:232 weeks ago55564272d2bc
21.0.5-oraclelinux8linux/arm64291.02 MBdocker pull container-registry.oracle.com/java/jdk-no-fee-term:21.0.5-oraclelinux82 weeks ago0743f814b8cc