Du willst einen Dienst schnell und ressourcenschonend in Proxmox betreiben? Dann sind LXC-Container oft die bessere Wahl als eine vollwertige VM. In dieser Anleitung erstellst du Schritt für Schritt einen LXC-Container in Proxmox – vom Template-Download über die Konfiguration bis zum ersten Start. Außerdem klären wir den Unterschied zwischen LXC und VM. So kannst du einen LXC-Container in Proxmox erstellen, ihn richtig dimensionieren und von Anfang an sicher und wartbar betreiben.
- LXC vs. VM: Was ist der Unterschied?
- Schritt 1: LXC-Template herunterladen
- Schritt 2: Container erstellen
- Schritt 3: Netzwerk konfigurieren
- Schritt 4: Container starten und betreten
- Privileged vs. Unprivileged Container
- Nützliche pct-Befehle
- Ressourcen richtig dimensionieren
- Nach dem Start: erste Schritte zur Absicherung
- Container sichern, klonen und migrieren
- Häufige Fragen
- Kann ich einen LXC-Container später vergrößern?
- Warum sollte ich unprivileged Container bevorzugen?
- Läuft Docker in einem LXC-Container?
- Fazit
LXC vs. VM: Was ist der Unterschied?
Beide virtualisieren, aber auf unterschiedliche Weise. Eine VM emuliert komplette Hardware und bringt einen eigenen Kernel mit. Ein LXC-Container teilt sich dagegen den Kernel des Proxmox-Hosts und ist dadurch leichter und schneller.
| Merkmal | LXC-Container | Virtuelle Maschine (VM) |
|---|---|---|
| Ressourcen | Sehr sparsam | Höherer Overhead |
| Start | In Sekunden | Wie ein echter Rechner |
| Kernel | Geteilt mit dem Host | Eigener Kernel |
| Betriebssystem | Nur Linux | Linux, Windows u. a. |
| Ideal für | Linux-Dienste, Webserver, Datenbanken | Fremde OS, GPU-Passthrough, volle Isolation |
Faustregel: Für einen einzelnen Linux-Dienst nimmst du einen LXC-Container. Brauchst du Windows oder GPU-Passthrough, führt kein Weg an einer VM vorbei.
Schritt 1: LXC-Template herunterladen
Bevor du einen Container erstellst, brauchst du eine Vorlage (Template) mit dem gewünschten Betriebssystem. In der Proxmox-Oberfläche gehst du dazu auf deinen Storage (meist local) → CT Templates → Templates und wählst z. B. Debian oder Ubuntu. Alternativ per Kommandozeile:
# Verfügbare Templates aktualisieren und anzeigen
pveam update
pveam available
# Ein Template herunterladen
pveam download local debian-12-standard_12.7-1_amd64.tar.zstSchritt 2: Container erstellen
Klicke oben rechts auf Create CT. Der Assistent führt dich durch die Konfiguration:
- General: Hostname vergeben und ein Passwort für den Root-Zugang setzen (oder direkt einen SSH-Key hinterlegen).
- Template: das zuvor heruntergeladene Template auswählen.
- Disks: Größe der Festplatte festlegen (für viele Dienste reichen 8–16 GB).
- CPU: Anzahl der Kerne wählen (1–2 genügen meist).
- Memory: Arbeitsspeicher zuweisen (z. B. 512–2048 MB).
- Network: Netzwerk konfigurieren (siehe unten).
Schritt 3: Netzwerk konfigurieren
Im Netzwerk-Schritt hängst du den Container an eine Bridge (meist vmbr0). Für die IP-Adresse hast du zwei Optionen:
- DHCP: Der Container bezieht seine Adresse automatisch vom Router – am einfachsten.
- Statisch: Du vergibst eine feste IP im Format
192.168.1.50/24und trägst das Gateway ein – ideal für Server, die dauerhaft erreichbar sein sollen.
Schritt 4: Container starten und betreten
Nach dem Anlegen startest du den Container und öffnest eine Konsole – entweder über den Button Console in der Oberfläche oder per Kommandozeile. Jeder Container hat eine numerische ID (z. B. 100):
# Container mit ID 100 starten
pct start 100
# Eine Shell im Container öffnen
pct enter 100Innerhalb des Containers solltest du als Erstes das System aktualisieren:
apt update && apt upgrade -yPrivileged vs. Unprivileged Container
Beim Erstellen kannst du wählen, ob der Container unprivileged (Standard und empfohlen) oder privileged läuft. Unprivileged Container sind sicherer, weil der Root-Benutzer im Container nicht dem Root des Hosts entspricht. Privileged Container brauchst du nur in Ausnahmefällen, etwa für bestimmte Hardware-Durchreichungen – dann aber mit dem Wissen um das höhere Risiko.
Nützliche pct-Befehle
| Befehl | Wirkung |
|---|---|
pct list | Alle Container auflisten |
pct start / stop ID | Container starten bzw. stoppen |
pct enter ID | Shell im Container öffnen |
pct exec ID -- BEFEHL | Einen Befehl im Container ausführen |
pct destroy ID | Container endgültig löschen |
Ressourcen richtig dimensionieren
Ein Vorteil von LXC ist, dass du Ressourcen jederzeit anpassen kannst – aber ein sinnvoller Startwert erspart dir späteres Nachjustieren. Als grobe Orientierung für typische Linux-Dienste dient die folgende Tabelle. Im Zweifel beginnst du kleiner: RAM und CPU lassen sich im laufenden Betrieb erhöhen, die Festplatte ebenfalls vergrößern.
| Dienst | CPU | RAM | Disk |
|---|---|---|---|
| Kleines Tool / Reverse Proxy | 1 Kern | 512 MB | 8 GB |
| Webserver / CMS | 1–2 Kerne | 1–2 GB | 16 GB |
| Datenbank | 2 Kerne | 2–4 GB | 16–32 GB |
Nach dem Start: erste Schritte zur Absicherung
Ein frischer Container ist noch nicht produktionsreif. Nach dem ersten apt update && apt upgrade solltest du einen nicht-privilegierten Benutzer anlegen, dich per SSH-Key statt Passwort anmelden und den direkten Root-Login abschalten. Wie du das sauber umsetzt, zeigt die Anleitung SSH-Server absichern.
- System aktualisieren und automatische Sicherheitsupdates einrichten.
- Zeitzone und Hostname prüfen, damit Logs korrekte Zeitstempel tragen.
- Nur die wirklich benötigten Dienste installieren, um die Angriffsfläche klein zu halten.
Container sichern, klonen und migrieren
Weil ein LXC-Container aus wenigen Dateien besteht, lässt er sich unkompliziert sichern und vervielfältigen. Über Backup in der Proxmox-Oberfläche (oder vzdump auf der Kommandozeile) erstellst du ein vollständiges Abbild, das du bei Bedarf auf demselben oder einem anderen Host wiederherstellst. Für wiederkehrende Setups wandelst du einen fertig eingerichteten Container per Rechtsklick in ein Template um und klonst daraus in Sekunden neue Instanzen. So sparst du dir bei jedem neuen Dienst die immer gleiche Grundkonfiguration und startest direkt mit einem gehärteten Basissystem.
Häufige Fragen
Kann ich einen LXC-Container später vergrößern?
Ja. RAM und CPU-Kerne änderst du im Tab Resources jederzeit, oft sogar ohne Neustart. Die Festplatte vergrößerst du über Resize disk – verkleinern ist allerdings nicht möglich.
Warum sollte ich unprivileged Container bevorzugen?
Weil der Root-Benutzer im Container dabei nicht dem Root des Hosts entspricht. Bricht ein Angreifer aus dem Container aus, hat er auf dem Host keine Root-Rechte. Für die meisten Linux-Dienste ist das der sichere Standard.
Läuft Docker in einem LXC-Container?
Grundsätzlich ja, es erfordert aber zusätzliche Einstellungen (etwa nesting und passende Berechtigungen). Für einen dedizierten Docker-Host ist eine VM oder ein bewusst konfigurierter, privilegierter Container die robustere Wahl.
Fazit
LXC-Container sind die schlanke, schnelle Art, Linux-Dienste in Proxmox zu betreiben – ideal für Webserver, Datenbanken oder kleine Tools. Nach Template-Download, Assistent und erstem apt upgrade ist dein Dienst startklar. Für ein praktisches Beispiel schau dir an, wie du Paperless-ngx als LXC-Container installierst. Denk außerdem daran, deine Container regelmäßig zu sichern – wie das geht, zeigt Proxmox Backup einrichten. Weitere Grundlagen findest du unter Proxmox Kernel ändern.

