Chapter 1. Introduction to source-to-image for OpenShift
OpenShift Container Platform provides an source-to-image (S2I) process to build and run applications. You can attach the application’s source code on top of a builder image (a technology image such as JBoss EAP). S2I process builds your application and layers it on top of the builder image to create an application image. After your application image is built, you can push it to an integrated registry inside OpenShift or to a standalone registry.
With S2I for OpenShift you can build and run basic Java applications, for example, fat-jar
or flat classpath
within a containerized image on OpenShift.
1.1. Image stream definitions
By default, the Red Hat OpenShift Container Platform includes image streams that contain the Red Hat build of OpenJDK container images.
You can import image stream definitions into a new namespace or recreate them. You can access these image stream templates on the openjdk
GitHub page.
Red Hat OpenShift Container Platform includes java
as an image stream, which follows the latest version of the container image. This image stream contains the following tags:
-
:latest
, which provides the latest supported Red Hat build of OpenJDK version. A tag tracks any updates for this image stream. -
:11
, which provides latest JDK 11 images. -
:8
, which provides the latest JDK 8 images.
The previous image stream and its tags are based on the latest version of the RHEL Universal Base Image (UBI).
If you want to select a specific RHEL or Red Hat build of OpenJDK version, select a tag with the openjdk-X-ubiY
format, where X
refers to the Red Hat build of OpenJDK version and Y
refers to the RHEL version.
The following examples demonstrate tags that follow this format:
-
openjdk-8-ubi8
-
openjdk-11-ubi8
-
openjdk-17-ubi8
Specific image streams exist to accurately track the latest container image versions. These image streams follow the ubiX-openjdk-Y
format, where X
specifies the RHEL UBI version and Y
specifies the Red Hat build of OpenJDK version. The following examples demonstrate image streams that follow this format:
-
ubi8-openjdk-8
-
ubi8-openjdk-11
-
ubi8-openjdk-17
The tags for these image streams map directly to the image versions, such as 1.11
, 1.12
, and so on.
Additional resources
- Managing image streams (OpenShift Container Platform)
- templates (GitHub)