21x9.org | System Administration | Home Automation | Smart Home
11.07.2023

Docker

Docker1 ist eine Open-Source-Plattform, die ermöglicht, Anwendungen in Containern zu erstellen, bereitzustellen und auszuführen. Container sind isolierte Umgebungen, die alle notwendigen Abhängigkeiten und Ressourcen einer Anwendung enthalten, einschließlich des Betriebssystems, der Bibliotheken und anderer Komponenten.

Durch die Verwendung von Docker können Anwendungen weitgehend unabhängig von der zugrunde liegenden Infrastruktur bereitgestellt werden.

Installation

In den meisten Repos der gängigen Linuxdistributionen ist Docker out-of-the-Box enthalten, auch in Debian. Da Debian aber deutlich längere Releasezyklen hat, als Docker selbst kann es sinnvoll sein, die öffiziellen Docker-Repos2 zu nutzen.

apt install apt-transport-https curl gnupg ca-certificates lsb-release
mkdir -p /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/debian/gpg | gpg \
  --dearmor -o /etc/apt/keyrings/docker.gpg
echo "deb [arch=$(dpkg --print-architecture) \
  signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/debian \
  $(lsb_release -cs) stable" | tee /etc/apt/sources.list.d/docker.list > /dev/null
apt update
apt-get install docker-ce docker-ce-cli containerd.io docker-compose-plugin docker-compose
docker run hello-world

Docker legt die meisten seiner Daten in /var/lib/docker/ ab, es kann daher sinnvoll sein, diesen Pfad auf einem eigenen Datenträger/eigener Partition abzulegen, insbesondere wenn man Docker die Verwaltung von volumes3 überlassen will und die persistent zu speichernden Daten nicht über einen bind-mount4 verwaltet.

Sowohl die Datenablage für volumes, als auch die für bind-mounts sollten sich auf einem LVM5- oder ZFS6-Volume mit ausreichend großem Speicherplatz für snapshots befinden, damit man von diesen ein Backup erstellen kann, ohne dass sie die zu sichernden Daten während der Sicherung verändern. Dies ist auch praktisch, wenn man seine Docker-Images automatisiert aktualisieren will. Man kann zwar meist zu einer älteren Version des Images zurückkehren, wenn die Daten in den zugehörigen Volumes aber dann breits auf eine neuere Datenbankversion migriert worden, hilft das natürlich wenig, denn es gibt nur selten einen Downgradpfad.


  1. https://www.docker.com ↩

  2. https://docs.docker.com/engine/install/debian/ ↩

  3. https://docs.docker.com/storage/volumes/ ↩

  4. https://docs.docker.com/storage/bind-mounts/ ↩

  5. https://de.wikipedia.org/wiki/Logical_Volume_Manager ↩

  6. https://de.wikipedia.org/wiki/ZFS_(Dateisystem) ↩

Tags: docker linux lvm zfs

Mehr

  • Logical Volume Manager (LVM)
  • Backups mit Borg und ZFS/LVM Snapshots
  • Flexible, bootfähige USB-Sticks mit Ventoy
  • Serverüberwachung mit checkmk
  • Heimserver mit Debian

Tags

docker linux lvm zfs

Archiv

  • Mar 2025 (2)
  • May 2024 (2)
  • Oct 2023 (1)
  • Aug 2023 (5)
  • Jul 2023 (31)

  • Ältere Einträge (95)

Feeds

Atom 1.0 RSS JSON
  • Datenschutz
  • Impressum
  • Archiv