Install container tools

Install the container-tools meta-package to get Podman, Buildah, Skopeo, CRIU, Udica, and all required libraries. This provides a complete environment for working with containers on RHEL.

About this task

Note
The stable streams are not available on RHEL 10. To receive stable access to Podman, Buildah, Skopeo, and others, use the RHEL EUS subscription.

Procedure

  1. Install RHEL.
  2. Register RHEL: Enter your user name and password. The user name and password are the same as your login credentials for Red Hat Customer Portal:
    # subscription-manager register
    Registering to: subscription.rhsm.redhat.com:443/subscription
    Username: <username>
    Password: <password>
  3. Install the container-tools meta-package:
    # dnf install container-tools

    You can also install podman, buildah, and skopeo individually if you prefer.

  4. Optional: Install the podman-docker package:
    # dnf install podman-docker

    The podman-docker package replaces the Docker command-line interface and docker-api with the matching Podman commands instead.

What to do next

Note

Configuration parsing uses a standardized, unified logic across the core configuration files. File search and precedence follow an inheritance hierarchy inspired by the UAPI configuration files specification, spanning vendor, system, and user locations.

Search paths follow a lowest to highest precedence order:

  • vendor location : `/usr/share/containers`
  • user location: `$XDG_CONFIG_HOME/containers` (or `$HOME/.config/containers` if `$XDG_CONFIG_HOME` is unset)
  • system location: `/etc/container`

Vendor and system locations supply shared defaults, and the user location overrides them. The `$XDG_CONFIG_HOME`  path applies to the root user as well, allowing root-only configuration under `/root/.config/containers`.

For each configuration type, the process reads only the main file from the highest-precedence match. When two or more drop-ins share a file name, only the highest-precedence file is used.

Each location provides the main file and its drop-in directory (for example, `containers.conf` and `containers.conf.d/`). Drop-in files ending in `.conf` load from all search directories and sort lexicographically by file name. Under `/usr` and `/etc`, an extra drop-in directory applies by mode, `containers.rootful.conf.d/` when running as root (UID 0), or `containers.rootless.conf.d/` and `containers.rootless.conf.d/$UID/` when running rootless.

These paths set system-wide defaults for root or rootless users. The per-UID sub directory lets an administrator configure one user without editing that user's home directory.