ubuntu: podman & podman compose

This is just a collection of installcommands for docker on ubuntu LTS 24.x
Feb 7, 2026 Author:
  • pabu
Default Thumbnail
Image credit: psalabs.eu

Choose the right container Setup

In the past i used docker a lot. Since they moved on more to please enterprises I prefer to use podman and podman compose.

Install Commands for podman & podman compose

sudo apt update
sudo apt install -y podman podman-compose
podman --version
podman compose version || podman-compose --version
systemctl --user enable --now podman.socket
sudo apt update
sudo apt install -y podman podman-compose
podman --version
podman compose version || podman-compose --version
systemctl --user enable --now podman.socket

Optional: make sure your user has a subuid/subgid range (needed for rootless features)

grep -E "^$USER:" /etc/subuid /etc/subgid || \
( echo "$USER:100000:65536" | sudo tee -a /etc/subuid >/dev/null && \
  echo "$USER:100000:65536" | sudo tee -a /etc/subgid >/dev/null )
grep -E "^$USER:" /etc/subuid /etc/subgid || \
( echo "$USER:100000:65536" | sudo tee -a /etc/subuid >/dev/null && \
  echo "$USER:100000:65536" | sudo tee -a /etc/subgid >/dev/null )

Alias for legacy systems

Some systems still use docker (never change a running system). Thats why i created aliases for the commands and do not need to retrain muscle memory 😉

cat >> ~/.bashrc <<'EOF'

# Docker muscle-memory -> Podman
alias docker='podman'

# Prefer "podman compose" if available; fall back to podman-compose
docker-compose() { command podman compose "$@" 2>/dev/null || command podman-compose "$@"; }

# Make "docker compose ..." work (docker is aliased to podman, but keep this explicit)
alias 'docker compose'='podman compose'
EOF

source ~/.bashrc
cat >> ~/.bashrc <<'EOF'

# Docker muscle-memory -> Podman
alias docker='podman'

# Prefer "podman compose" if available; fall back to podman-compose
docker-compose() { command podman compose "$@" 2>/dev/null || command podman-compose "$@"; }

# Make "docker compose ..." work (docker is aliased to podman, but keep this explicit)
alias 'docker compose'='podman compose'
EOF

source ~/.bashrc