9 Oracle Linux Container Image Tagging Conventions
WARNING:
Oracle Linux 7 is now in Extended Support. See Oracle Linux Extended Support and Oracle Open Source Support Policies for more information.
Migrate applications and data to Oracle Linux 8 or Oracle Linux 9 as soon as possible.
Oracle follows several conventions when tagging container images for Oracle Linux. Users should be aware of these conventions to ensure that the best image is used for the purpose at hand to avoid unnecessary breakages in functionality and to help ensure that images continue to use the most recently patched software.
The slim Tag
Oracle releases minimal compressed versions of each Oracle Linux release. These images contain just enough operating system to run within a container and to perform installations of additional packages. These images are the recommended images for general use within builds and where scripted installation is likely to be used. The images that use this tag are maintained at the most current update level.
For example, to use the most recent version of an Oracle Linux 7 slim
image, use the 7-slim
tag. To use the most
recent version of an Oracle Linux 8 slim image, use the
8-slim
tag.
docker pull oraclelinux:7-slim
FIPS compliant versions of images are tagged with the slim-fips
tag. These
images include compliant cryptographic package versions and most of the initial image setup
required for container FIPS compliance. To use these images, you must enable FIPS mode on the
host system.
The following slim-fips
images are available:
-
oraclelinux:7-slim-fips
:- The latest FIPS compliant versions Oracle Linux 7 cryptographic packages at the time of the release of the image are already installed;
- The Oracle Linux 7.8 security validation repository is already enabled in the image yum configuration file, so that the container can retrieve system updates that include FIPS compliant cryptographic package versions;
- The
dracut-fips
package required for container FIPS mode is already installed.
-
oraclelinux:8-slim-fips
:- The latest FIPS compliant versions Oracle Linux 8 cryptographic packages at the time of the release of the image are already installed;
- The Oracle Linux 8.4 security validation repository is already enabled in the image yum configuration file, so that the container can retrieve system updates that include FIPS compliant cryptographic package versions;
- The
/etc/system-fips
file required for container FIPS mode in docker is already created. - Note that Oracle Linux 8 docker containers still require that you mount FIPS
cryptographic policies from
/usr/share/crypto-policies/back-ends/FIPS
to/etc/crypto-policies/back-ends
in the container. See Enabling FIPS Mode in Containers.
General Oracle Linux release Tags
Oracle Linux images are tagged at their release level and are maintained to always map to the latest corresponding update level. If you need a more complete operating system than the version provided in a slim image, you should use a release tag to obtain the latest image for that Oracle Linux image.
For example, to get the latest update release image for Oracle Linux 8, use
the 8
tag:
docker pull oraclelinux:8
Oracle Linux Update Level Tags
Oracle Linux images are tagged at their update level. The other tags described map onto the latest or most current update level for an Oracle Linux image.
Attention:
Do not directly use update level tags within your Dockerfile or within any of your builds unless you have a specific use case that requires a particular update level. Typical use cases involve trying to resolve an issue or bug that is only present at a particular update level of Oracle Linux.
Using an update level tag can result in your containers running unpatched software that may expose you to security issues and software bugs.
Update level tags use dot notation to indicate the update level.
For example, Oracle Linux 8.2 is indicated using the 8.2
tag:
docker pull oraclelinux:8.2
The latest Tag
Important:
Oracle does not provide this tag for Oracle Linux images. Use a slim image or a release tag instead. Oracle also recommends that users avoid dependency on this tag when working with other distribution or software images.
The use of a default often results in significant confusion and
regularly breaks builds and scripted functionality for end users.
For this reason, and to help encourage best practice when working
with image tags, Oracle does not provide a
latest
tag for Oracle Linux images.
The following reasons for Oracle's decision on this help to explain why this tag is not available:
-
When the
latest
tag is used, it can result in significant jumps between distribution releases rather than simple update levels. This is usually not what a user intends when selecting thelatest
tag, or depending on tools to fall back to this tag by not specifying a tag at all. Expected functionality can change dramatically between releases resulting in changes to commands, options, configurations and available software. -
There is no easy way to identify which
latest
image was used for a particular build, making it difficult to see the differences between two final build images. This problem tracking changes also makes it difficult to roll back to a known functioning base image if a new build fails. -
Tagging an image with the
latest
tag is not automatic and it is possible for a more recent image to be available while the image tagged aslatest
has not been updated. This can lead to unexpected consequences. -
There is no guarantee that all tools treat the
latest
tag the same. While some tools may default to always pulling an image tagged aslatest
from an upstream registry, other tools may default to a locally stored image also tagged aslatest
, even if it has fallen out of date.
This decision may result in errors in some tools that fall back to
the latest
tag when no tag is specified for an
image. For example:
docker pull docker.io/library/oraclelinux
Trying to pull docker.io/library/oraclelinux... manifest unknown: manifest unknown Error: error pulling image "docker.io/library/oraclelinux": unable to pull docker.io/library/oraclelinux: unable to pull image: Error initializing source docker://oraclelinux:latest: Error reading manifest latest in docker.io/library/oraclelinux: manifest unknown: manifest unknown
Always specify the appropriate tag for the image that you intend to use! For example:
docker pull oraclelinux:8