Chapter 1. Red Hat Software Collections Container Images

Red Hat Software Collections container images are based on the corresponding collection and the rhel7 or the ubi7 base image. For more information about Universal Base Images, see Universal Base Images (UBI): Images, repositories, packages, and source code.

Red Hat Software Collections container images include application, daemon, and database images. Running Red Hat Software Collections container images is supported on:

  • Red Hat Enterprise Linux 7 Server
  • Red Hat Enterprise Linux 7 Atomic Host
  • Red Hat Enterprise Linux 8

For information about components available as Software Collections for Red Hat Enterprise Linux 7, see the Red Hat Software Collections and Red Hat Developer Toolset documentation.

Red Hat Software Collections container images are detailed in the tables:

You can also search for available container images in the Red Hat Ecosystem Catalog.

Important

Only the latest version of each container image provided by Red Hat is supported.

Note

When using SELinux for controlling processes within a container, make sure that any content that is volume mounted into the container is readable, and potentially writable, depending on the use case. For more information, see the podman man page.

Additional Resources

1.1. Red Hat Software Collections Container Images as Builder Images

You can use Red Hat Software Collections container images as builder images to build, deploy, and run your applications. To support common use cases, the following Source-to-Image (S2I) scripts are included in the builder images:

  • The /usr/libexec/s2i/assemble script inside the image is run to produce a new image with the application artifacts. The script takes sources of a given application and places them into appropriate directories inside the image. If the application source includes definition of the dependent components (for example, requirements.txt that lists components from PyPi in case of Python projects), the components are installed into the image.
  • The /usr/libexec/s2i/run script is set as the default command in the resulting container image (the new image with the application artifacts).

You can run the resulting application images using podman. For instructions, see Working with containers. In Red Hat Enterprise Linux 7, you can still use the docker command instead of podman with the same command-line syntax.

1.2. Extending Existing Container Images

To extend a functionality of a container image provided by Red Hat, you have the following options:

  • Set environment variables. See documentation for the respective container image.
  • Use OpenShift secrets.
  • Build your custom application images. For instructions, see Chapter 2, Building Application Images Using Red Hat Software Collections Container Images.
  • Use the Source-to-Image build strategy in OpenShift, which enables you to add your own configuration files, for daemon images that support this feature. Follow documentation for the respective container image, for example, nginx.
  • In case of other daemon or database images, build a new container on top of the provided container image. Write a custom Dockerfile and use the original container in the FROM clause. See section called Build an application using a Dockerfile in the documentation for the respective container image or the example described in the Knowledgebase article How to Extend the rhscl/mariadb-101-rhel7 Container Image.