VM oder LXC ?

Änderungsstand: 2025-11-25

VM oder LXC – was nehme ich eigentlich wann?

Was sollte ich verwenden – eine klassische VM (virtuelle Maschine) oder lieber einen CT (also einen LXC-Container)?
Die schnelle Antwort: Kommt drauf an.
Die ausführliche? Die kommt jetzt.

Eine virtuelle Maschine ist für mich wie ein vollwertiger Rechner im Rechner – mit eigenem Kernel, eigenem Bootloader, BIOS/UEFI und komplett vom Host isoliert. Sie verhält sich wie ein echter PC, nur eben digital. Das ist perfekt, wenn ich maximale Trennung, größere Sicherheitsanforderungen oder volle Kontrolle über das System brauche. Der Preis dafür: höherer Ressourcenverbrauch.

Ein LXC-Container dagegen ist der schlanke, flinke Kollege: ebenfalls ein eigenständiges System, aber mit einem entscheidenden Unterschied – er nutzt den Kernel des Hosts mit. Dadurch starten Container blitzschnell, sind extrem ressourcenschonend und brauchen nur eine minimale Grundinstallation. Die Isolation ist dennoch sauber, solange man Container nicht direkt dem Internet aussetzt.

Klingt nach klarer Sache? Warum also nicht nur Container?

Weil Container eben keinen eigenen Kernel haben – und damit an Grenzen stoßen. Wenn ich mit verschiedenen Kernel-Versionen experimentiere oder tief ins System eingreifen will, brauche ich eine VM. Auch manche Software erwartet Kernel-Funktionen oder Hardware-Abstraktionen, die nur in einer VM zuverlässig gegeben sind.


Meine Faustregeln sehen in etwa so aus:

1. Oberste Priorität: Sicherheit zuerst!

Dienste, die von außen erreichbar sein müssen – etwa WireGuard, Nextcloud, AdGuard oder andere öffentlich zugängliche Services – laufen bei mir konsequent in einer VM.
LXC bietet zwar Isolation, aber eine VM trennt den Dienst deutlich stärker vom Hostsystem und bietet eine robustere Verteidigung, sollte ein Angreifer doch einmal durchkommen.

Kurz: Öffentliche Dienste → VM. Immer.


2. Interne, unkritische Services → LXC

Dienste, die nicht aus dem Internet erreichbar sind, landen bei mir fast immer in LXC-Containern.
Sie sind schnell, schlank, effizient und ideal für interne Tools, Automationen oder lokale Anwendungen.


3. NAS-Software: lieber VM

Tools wie OpenMediaVault oder CasaOS setze ich bevorzugt in VMs ein.
Sie interagieren intensiv mit Datenträgern, Dateisystemen und Storage-Konzepten – und dafür sorgt eine VM für eine saubere, stabile und gut reproduzierbare Umgebung.


4. Docker-Anwendungen → LXC, aber mit Bedacht

Für Docker nutze ich meist minimale Debian-LXC-Container. Wenn ich’s extra leicht will, kommt Alpine Linux zum Einsatz.
Verwaltet wird das Ganze je nach Bedarf über Portainer oder ganz klassisch mit Docker Compose.

Ja, „Docker in LXC“ ist nicht immer empfohlen – je nach Setup können cgroups oder OverlayFS zicken. Aber: In meiner Umgebung, wo Docker-Container nicht direkt vom Internet erreichbar sind und der Host sauber konfiguriert ist, läuft das stabil, performant und sicher genug.
Für öffentlich zugängliche Docker-Stacks würde ich allerdings immer zu einer VM greifen.


Mein Fazit:

  • Wenn es leicht, schnell und ressourcenschonend sein soll und keine externe Angriffsfläche besteht → LXC.
  • Wenn Sicherheit, Isolation oder öffentliche Erreichbarkeit eine Rolle spielen → VM.
  • Wenn ich experimentiere oder Kernel-nahe Features brauche → VM.
  • Und wenn ich beides will?
    Dann nutze ich eben beides – weil ich’s kann.
Erstelle eine Website wie diese mit WordPress.com
Jetzt starten