Docker Install

This role installs Docker Engine (CE) on RedHat-based systems.

Overview

This role installs Docker Engine (CE) on RedHat-based systems. It configures the official Docker CE repository, installs Docker Engine, CLI tools, containerd runtime, and Docker Compose V2 plugin, creates an override needed by navidrome, starts and enables the Docker daemon, and adds specified users to the docker group for non-root container management.

What This Role Does

For RedHat Systems

  1. Adds Docker CE repository

    • Creates /etc/yum.repos.d/docker-ce-stable.repo
    • Configures GPG key verification
    • Points to official Docker download server
  2. Installs Docker packages via dnf/yum:

    • docker-ce (Docker Engine daemon)
    • docker-ce-cli (docker command)
    • containerd.io (container runtime)
    • docker-buildx-plugin (extended build features)
    • docker-compose-plugin (Compose V2)
  3. Starts and enables Docker daemon

    • Starts Docker
    • Ensures Docker starts on boot
  4. Adds users to docker group

    • Users can run docker commands without sudo
    • Takes effect after user logs out/in

Role Variables

VariableDescription
docker_install_docker_group_usersUsers to add to the docker group
docker_install_yum_packagesList of Docker packages to install
docker_install_yum_repositoriesDocker CE repository configuration

Notes

  • Installs docker-ce, docker-ce-cli, containerd.io, docker-buildx-plugin, docker-compose-plugin
  • Users added to the docker group gain access to Docker commands
  • An override is created so the music library is mounted before containers start so navidrome doesn’t have an empty library
  • Docker daemon is enabled to start automatically on boot
  • This role only supports RedHat-based distributions