12.4. Source-to-image
You can use the Red Hat Software Collections images as a foundation for applications that rely on specific runtime environments such as Node.js, Perl, or Python. Special versions of some of these runtime base images are referred to as Source-to-Image (S2I) images. With S2I images, you can insert your code into a base image environment that is ready to run that code.
S2I images include:
- Java
- Node.js
- Perl
- PHP
- Python
- Ruby
S2I images are available for you to use directly from the OpenShift Container Platform web UI by selecting Catalog
S2I images are also available though the Configuring the Cluster Samples Operator.
12.4.1. Source-to-image build process overview
Source-to-image (S2I) produces ready-to-run images by injecting source code into a container that prepares that source code to be run. It performs the following steps:
-
Runs the
FROM <builder image>
command - Copies the source code to a defined location in the builder image
- Runs the assemble script in the builder image
- Sets the run script in the builder image as the default command
Buildah then creates the container image.
12.4.2. Additional resources
- For instructions on using the Cluster Samples Operator, see the Configuring the Cluster Samples Operator.
- For more information on S2I builds, see the builds strategy documentation on S2I builds.
- For troubleshooting assistance for the S2I process, see Troubleshooting the Source-to-Image process.
- For an overview of creating images with S2I, see Creating images from source code with source-to-image.
- For an overview of testing S2I images, see About testing S2I images.