Switching from Docker to Podman#

Red Hat Enterprise Linux (RHEL) v9.x removes support for Docker. If you are currently using Docker to manage the containers for your Package Security Manager, you’ll need to update your server to use Podman as the container engine instead.

Caution

Although Podman will be used as the container engine, Package Security Manager requires the use of docker-compose due to incompatibilities between supported features in docker-compose files.

  1. Open a terminal and connect to your instance of Package Security Manager.

  2. Enter your installer directory (ate-installer-*).

  3. Stop all containers by running the following command:

    sudo docker-compose down
    
  4. Once all containers have stopped, download the Podman packages and replace the conflicting Docker packages by running the following command:

    sudo yum install podman podman-docker --allowerasing
    

    Note

    podman-docker allows you to control Podman using Docker commands.

  5. Install netavark by running the following command:

    sudo yum install netavark
    
  6. Using your preferred file editor, open the usr/share/containers/containers.conf file and set the network_backend= value to "netavark".

  7. Save your work and close the file.

  8. Enable the podman.socket by running the following commands:

    sudo systemctl enable --now podman.socket
    sudo systemctl status podman.socket
    
  9. If necessary, navigate back to your installer directory.

  10. Load the images into Podman by running the following command:

    podman load --input repo_images.tar
    
  11. Start the containers by running the following command:

    docker-compose up -d
    

Log in to your Package Security Manager using your existing credentials and verify that all existing channels, mirrors, users, configurations, etc., are as expected.