Install Docker on AlmaLinux 9
Step 1 – Install Docker Engine
dnf config-manager --add-repo https://download.docker.com/linux/rhel/docker-ce.repo 2>/dev/null || \
dnf config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
dnf install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
systemctl enable --now docker
Step 2 – Add your user to the docker group
usermod -aG docker $USER
# Log out and back in for the change to take effect
newgrp docker
Step 3 – Verify
docker --version
docker run --rm hello-world
Step 4 – docker compose (V2 plugin)
docker compose version
Step 5 – Example: run Nginx in a container
docker run -d --name nginx \
-p 80:80 \
-v /var/www/html:/usr/share/nginx/html:ro \
nginx:alpine
Step 6 – Example compose.yml
services:
web:
image: nginx:alpine
ports:
- "80:80"
volumes:
- ./html:/usr/share/nginx/html:ro
db:
image: mysql:8
environment:
MYSQL_ROOT_PASSWORD: rootpass
MYSQL_DATABASE: appdb
MYSQL_USER: appuser
MYSQL_PASSWORD: apppass
volumes:
- mysql_data:/var/lib/mysql
volumes:
mysql_data:
docker compose up -d