Proxmox: Docker in LXC unter Ubuntu 22.04 installieren – Schritt für Schritt

Was ist Docker

Docker ist eine Open-Source-Plattform zur Container-Virtualisierung. Mit Docker können Anwendungen in isolierten Containern ausgeführt werden, die alle notwendigen Abhängigkeiten enthalten. Dadurch sind sie plattformunabhängig und leicht zu verwalten. Im Gegensatz zu klassischen virtuellen Maschinen (VMs) nutzt Docker die Ressourcen des Host-Systems effizienter, da Container keinen eigenen Kernel benötigen, sondern den des Hosts gemeinsam nutzen.

Welche Vorteile hat Docker in einem LXC gegenüber einer VM

Die Nutzung von Docker in einem LXC-Container bietet mehrere Vorteile gegenüber einer klassischen VM:

  • Geringerer Ressourcenverbrauch: Da LXC-Container keinen eigenen Kernel starten, benötigen sie weniger RAM und CPU-Leistung als eine VM.
  • Schnellere Bereitstellung: LXC-Container starten in Sekundenbruchteilen, während VMs meist länger zum Booten brauchen.
  • Bessere Integration: Docker-Container laufen in einem LXC-Container näher am Host-System, was eine effizientere Ressourcennutzung ermöglicht.
  • Einfacheres Management: Die Kombination aus LXC und Docker erleichtert die Verwaltung mehrerer isolierter Anwendungen ohne die Overhead-Kosten einer vollständigen VM.

Unterschiede LXC und VM

  • Kernel-Nutzung: Eine VM hat ihr eigenes Betriebssystem mit eigenem Kernel, während ein LXC-Container den Kernel des Hosts nutzt.
  • Leistung: LXC-Container haben einen geringeren Overhead, da sie keinen Hypervisor benötigen. Dadurch sind sie effizienter und nutzen die Hardware direkter.
  • Flexibilität: VMs eignen sich besser für Anwendungen, die vollständige Systemisolation benötigen, während LXC-Container ideal für leichtgewichtige und schnell startende Workloads sind.
  • Kompatibilität: Manche Anwendungen, insbesondere solche mit speziellen Kernel-Modulen, funktionieren in einer VM besser als in einem LXC-Container.

LXC Container vorbereiten

Damit Docker in dem LXC installiert und verwendet werden kann, muss in den Optionen des Containers das Feature „nesting“ aktiviert werden.

Proxmox-Docker-LXC-01

Proxmox-Docker-LXC-01

Proxmox-Docker-LXC-02

Proxmox-Docker-LXC-02

Docker in Ubuntu installieren

  • Host System
    • Proxmox 8.3.3
    • CPU: AMD Ryzen 3700x
    • RAM: 80GB
    • SSD: 2x 2TB NVME
  • Gast System
    • Ubuntu 22.04

Die Installation von Docker in einem Ubuntu 22.04 LXC-Container auf Proxmox erfordert einige Schritte, um sicherzustellen, dass Docker reibungslos läuft.

1. System aktualisieren

Zunächst wird das System auf den neuesten Stand gebracht:

sudo apt-get update

2. Notwendige Pakete installieren

Docker benötigt einige zusätzliche Pakete für die Paketverwaltung und Zertifikate:

sudo apt install -y apt-transport-https ca-certificates curl software-properties-common

3. Docker-Repository hinzufügen

Der offizielle Docker GPG-Schlüssel wird importiert und das Docker-Repository wird zu den Paketquellen hinzugefügt::

curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg

echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

4. Paketlisten aktualisieren

Damit die neuen Paketquellen erkannt werden, erfolgt ein erneutes Update:

sudo apt update

5. Verfügbare Docker-Versionen prüfen (optional)

Um sicherzustellen, dass die richtigen Docker-Pakete installiert werden, kann dieser Befehl ausgeführt werden:

sudo apt-cache policy docker-ce

6. Docker installieren

Nun kann Docker installiert werden:

sudo apt install -y docker-ce

7. Benutzer zur Docker-Gruppe hinzufügen

Damit der aktuelle Benutzer Docker ohne sudo nutzen kann, wird er zur docker-Gruppe hinzugefügt.
Danach empfiehlt es sich, sich einmal ab- und wieder anzumelden, damit die Gruppenzugehörigkeit aktiv wird.

sudo usermod -aG docker ${USER}

8. Installation testen

Zum Abschluss kann überprüft werden, ob Docker korrekt läuft.
Dieser Befehl lädt ein kleines Test-Image und führt es aus, um zu prüfen, ob Docker funktioniert.

docker run hello-world

TL;DR

sudo apt-get update
sudo apt install -y apt-transport-https ca-certificates curl software-properties-common
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg

echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

sudo apt update

sudo apt-cache policy docker-ce

sudo apt install -y docker-ce

sudo usermod -aG docker ${USER} # aktuellen benutzer zur Docker Berechtigungsgruppe hinzufügen

Durchschnittliche Bewertung 0 / 5. Bewertungen: 0

Kommentar verfassen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Nach oben scrollen