LXC-Container vs. VMs – wann was?
LXC (Linux Containers) sind eine Technologie, die Prozesse auf Linux-Ebene isoliert – ähnlich wie Docker, aber mit mehr Nähe zum Betriebssystem. Der entscheidende Unterschied zu VMs:
| Merkmal | LXC-Container | KVM-VM |
|---|---|---|
| Kernel | Teilt Host-Kernel | Eigener Kernel |
| Bootzeit | 1–3 Sekunden | 30–90 Sekunden |
| Overhead | ~50 MB RAM | ~500 MB RAM |
| OS-Unterstützung | Nur Linux | Windows und Linux |
| Isolation | Hoch | Sehr hoch |
| Performance | ~Nativ | 2–5% Overhead |
LXC verwenden für:
- Linux-Dienste (Webserver, Datenbank, Mailserver, DNS)
- Heimnetz-Services (Pi-hole, Heimdall, Nextcloud)
- Entwicklungsumgebungen
- Viele isolierte Dienste auf einem Server
VM verwenden für:
- Windows-Betriebssysteme
- Anwendungen mit Kernel-Modulanforderungen
- Maximale Isolation benötigt
Container-Template herunterladen
LXC-Container starten von einem Template (minimales Betriebssystem-Image).
Über die Weboberfläche
- Node → local → CT Templates
- Klicken Sie Templates oben
- Template aus der Liste auswählen (z. B. "ubuntu-22.04-standard")
- Download
Über die Shell
pveam update – Template-Liste aktualisierenpveam available | grep ubuntu – Verfügbare Ubuntu-Templatespveam download local ubuntu-22.04-standard_22.04-1_amd64.tar.zst
LXC-Container erstellen
Klicken Sie Create CT in der Weboberfläche.
Schritt 1: General
- Node: Proxmox-Host
- CT ID: Automatisch (z. B. 200)
- Hostname: z. B.
nextcloud-01oderpihole - Password: Root-Passwort für den Container
- SSH Public Key: Öffentlichen SSH-Schlüssel einfügen (empfohlen statt Passwort)
Unprivileged Container: ✓ aktivieren (empfohlen)
Privileged vs. Unprivileged:
- Unprivileged: Root im Container entspricht einem normalen Benutzer auf dem Host. Sicherer, empfohlen für alle Dienste.
- Privileged: Root im Container ist Root auf dem Host. Mehr Berechtigungen, aber Sicherheitsrisiko.
Schritt 2: Template
Heruntergeladenes Template auswählen (z. B. ubuntu-22.04-standard_22.04-1_amd64.tar.zst).
Schritt 3: Disks
- Storage: Speicher-Pool auswählen (z. B. local-lvm)
- Disk Size: Festplattengröße (z. B. 8–20 GB je nach Verwendungszweck)
Schritt 4: CPU
- Cores: 1–2 Kerne reichen für die meisten Container
Schritt 5: Memory
- Memory: 512–2048 MiB je nach Dienst
- Swap: 512 MiB (optional, als Sicherheitspuffer)
Schritt 6: Network
- Bridge: vmbr0
- IPv4/CIDR: Feste IP (z. B.
192.168.1.20/24) oder DHCP - Gateway: Router-IP (z. B.
192.168.1.1)
Empfehlung: Feste IPs für alle Container vergeben! Dienste müssen immer unter der gleichen Adresse erreichbar sein.
Schritt 7: DNS
- DNS domain: Optional (z. B.
ihrefirma.de) - DNS servers: Ihr DNS-Server oder
8.8.8.8
Schritt 8: Confirm
Aktivieren Sie Start after created für sofortigen Start.
Container verwalten
Container starten, stoppen, neu starten
Über die Weboberfläche: Container auswählen → Start/Stop/Reboot-Buttons
Über die Shell (auf dem Proxmox-Host):
pct start 200 – Container 200 startenpct stop 200 – Container 200 stoppenpct reboot 200 – Container neu startenpct status 200 – Status anzeigen
In den Container einloggen
pct enter 200 – Shell des Containers öffnen (auf Proxmox-Host)
Oder per SSH (wenn Netzwerk konfiguriert):ssh [email protected]
Container-Konfiguration anzeigen
cat /etc/pve/lxc/200.conf
Software installieren
Im Container-Terminal (Ubuntu/Debian):apt update && apt install -y nginx
Der Container verhält sich wie eine normale Ubuntu-Installation – alle apt-Befehle funktionieren identisch.
Wichtige LXC-Konfigurationsoptionen
Nesting (für Docker in LXC)
Um Docker innerhalb eines LXC-Containers zu betreiben (sehr populär):
pct set 200 -features nesting=1
Oder in der Weboberfläche: Container → Options → Features → Nesting aktivieren.
Docker in LXC spart erheblich Ressourcen gegenüber Docker in einer vollständigen VM.
Bind Mounts (Host-Verzeichnisse einbinden)
Teilen Sie Verzeichnisse zwischen Host und Container:
pct set 200 -mp0 /mnt/data/nextcloud,mp=/var/data
Dies bindet /mnt/data/nextcloud auf dem Host als /var/data im Container ein.
CPU-Limits setzen
pct set 200 -cpulimit 2 -cpuunits 1024
cpulimit: Maximale CPU-Kerne (2 = max. 2 Kerne)cpuunits: Priorität (1024 = Standard)
Ressourcen-Limits erhöhen (nachträglich)
pct set 200 -memory 2048 -cores 2
Muss der Container nicht gestoppt werden – Änderungen gelten nach Neustart des Containers.
Container-Templates selbst erstellen
Wenn Sie häufig ähnliche Container erstellen, lohnt sich ein eigenes Template:
- Container fertig einrichten
- Container stoppen
- In Template umwandeln: Container → More → Convert to Template
Zukünftige Container können von diesem Template geklont werden.
Container sichern (Backup)
Proxmox-Backup integriert sich nahtlos in LXC-Container:
Datacenter → Backup → Add:
- Storage: Backup-Repository auswählen
- Schedule: täglich (z. B.
0 2 * * *) - Includes: Alle oder nur ausgewählte Container
Manuelles Backup:vzdump 200 --storage local --compress zstd
Häufige LXC-Probleme
Container startet nicht nach Neustart:
Autostart aktivieren: Container → Options → Start at boot aktivieren
DNS-Auflösung funktioniert nicht:
DNS-Server im Container prüfen: cat /etc/resolv.conf
Korrektur: pct set 200 -nameserver 8.8.8.8
Keine Internetverbindung:
Gateway im Container prüfen: ip route
Bridge-Verbindung auf dem Host prüfen: brctl show vmbr0
FAQ
Kann ich einen LXC-Container zwischen Proxmox-Hosts verschieben?
Ja: Container → Migrate. Für Live-Migration muss Shared Storage vorhanden sein (Ceph, NFS, etc.).
Wie viele Container kann ein Proxmox-Host betreiben?
Deutlich mehr als VMs. Auf einem Server mit 32 GB RAM können 50+ leichtgewichtige Container laufen.
Unterstützt LXC systemd-Dienste?
Ja, moderne LXC-Templates mit systemd werden vollständig unterstützt. Aktivieren Sie Nesting für beste Kompatibilität.
Fazit
LXC-Container sind das Rückgrat moderner Proxmox-Infrastrukturen. Sie ermöglichen es, Dutzende isolierter Linux-Dienste auf einem Server zu betreiben – mit minimalem Overhead und maximaler Performance.
Als Proxmox-Spezialisten in Heidelberg planen und implementieren wir Container-Infrastrukturen für Unternehmen in Mannheim, Ludwigshafen und der Rhein-Neckar-Region. Jetzt Container-Beratung anfragen.