Docker

Serveranwendungen

Debian und Ubuntu bringen eine Docker-Umgebung mit. Allerdings funktioniert diese Umgebung aus der Paketquelle mit offiziellen Docker-Paketen nicht (immer). Daher ist eine Installation von Docker auf der Grundlage der offiziellen Docker-Dokumentation zuverlässiger (s. https://docs.docker.com/engine/install/ubuntu/).

Zunächst sollten alle möglicherweise störenden Abhängigkeiten deinstalliert werden:

Shell
for pkg in docker.io docker-doc docker-compose docker-compose-v2 podman-docker containerd runc; do sudo apt-get remove $pkg; done

Es gibt verschiedene Möglichkeiten, Docker zu installieren. Die Beste ist die, über hinzuzufügende Paketquellen. Zunächst wird der entsprechende GPG-Key für die Quelle der Paketverwaltung hinzugefügt:

Shell
sudo apt-get update
  sudo apt-get install ca-certificates curl
  sudo install -m 0755 -d /etc/apt/keyrings
  sudo curl -fsSL https://download.docker.com/linux/[distro]/gpg -o /etc/apt/keyrings/docker.asc
  sudo chmod a+r /etc/apt/keyrings/docker.asc

Dabei ist [distro] natürlich durch den Namen der Distribution, also z.B. "ubuntu" oder "debian" zu ersetzen.

Dann wird die Paketquelle ergänzt:

Shell
echo \
    "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/[distro] \
    $(. /etc/os-release && echo "$VERSION_CODENAME") stable" | \
    sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
  sudo apt-get update

Jetzt kann Docker mit allen benötigten Paketen installiert werden:

Shell
sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

Docker muss nun gestartet werden und außerdem wäre es nett, wenn der Server Docker beim nächsten Neustart direkt mit startet. Also setze ich folgende Befehle auf der Konsole ab:

Shell
sudo systemctl start docker
sudo systemctl enable docker

Damit Docker ohne Rootrechte genutzt werden kann, ist noch der Hauptbenutzer der Gruppe docker hinzuzufügen:

Shell
sudo usermod -aG docker hanswurst

Dies wird erst nach der nächsten Neuanmeldung wirksam.