Unterschiede zwischen Proxmox Containers und Docker

Table of Contents

LXC

LXC ist ein Userspace Interface zur Eindämmung des Linux-Kernels und kann verwendet werden für Systemvirtualisierung. Durch eine mächtige API und einfache Tools ermöglicht es Linux Benutzern einfache Erstellung und Verwaltung von System Container. LXC ermöglicht ein komplettes OS in einem Container zu betreiben.

LXD

LXD ist auf LXC Aufgebaut und bietet neue und bessere Benutzererfahrung. Unter der Haube verwendet LXD LXC durch liblxc und dessen Go binding für das Erstellen und Verwalten von Container. Es ist im Grunde eine Alternative zu den Tools und dem Verteilungsvorlagensystem von LXC mit den zusätzlichen Funktionen, die sich aus der Steuerbarkeit über das Netzwerk ergeben.

Proxmox Containers

Als Proxmox Container werden Container bezeichnet, die mit dem Proxmox Container Toolkit (pct) erstellt und verwaltet werden. Sie zielen auch auf die Systemvirtualisierung ab und verwenden LXC als Grundlage des Containerangebots. Das Proxmox Container Toolkit (pct) ist eng mit Proxmox VE gekoppelt. Das bedeutet, dass es Cluster-Setups kennt und dieselben Netzwerk- und Speicherressourcen wie virtuelle QEMU-Maschinen (VMs) verwenden kann. Sie können sogar die Proxmox VE-Firewall verwenden, Backups erstellen und wiederherstellen oder Container mit dem HA-Framework verwalten. Mit der Proxmox VE API lässt sich alles über das Netzwerk steuern.

Docker

Docker zielt darauf ab, eine einzelne Anwendung in einer isolierten, in sich geschlossenen Umgebung zu laufen. Diese werden im Allgemeinen als „Anwendungscontainer“ und nicht als „Systemcontainer“ bezeichnet. Sie verwalten eine Docker-Instanz über den Host mithilfe der Docker Engine-Befehlszeilenschnittstelle. Es wird nicht empfohlen, Docker direkt auf Ihrem Proxmox VE-Host auszuführen. Wenn man also einen Anwendungscontainer ausführen möchte mit z.B. Docker-Images, sollte man diese am besten in einer Proxmox Qemu-VM ausführen.