
Female photographer - stock.adob
So setzen Sie virtuelle Desktops mit Docker und Linux um
Lesen Sie in diesem Artikel, wie Sie eine VDI-Umgebung mit Linux im Netzwerk aufbauen, damit Anwender auch ohne Client direkt über den Browser auf den Desktop zugreifen können.
Der Zugriff mit dem Webbrowser auf eine VDI-Umgebung mit Linux ist vor allem dann interessant, wenn Sie Anwendern Büroanwendungen oder andere Unternehmenssoftware zur Verfügung stellen wollen, ohne zusätzliche Linux-PCs oder virtuelle Maschinen auf Workstations zu installieren. Mit einem einzelnen Linux-Server lassen sich nahezu beliebig viele Desktops bereitstellen
Der eigene Linux-Terminalserver im Netzwerk bietet viele Vorteile
Dabei muss es sich nicht einmal um einen physischen Linux-Server handeln; eine entsprechend leistungsstarke virtuelle Maschine mit Ubuntu genügt. Es ist möglich, das System so zu konfigurieren, dass die Nutzer über eine Webschnittstelle auf die Desktops zugreifen. Aus Sicherheitsgesichtspunkten sollte dieser Zugriff über das interne Netzwerk erfolgen.
Noch platzsparender wird die VDI, wenn Sie Docker-Container einsetzen, um sie zu hosten – beispielsweise mit Proxmox.
Docker als Grundlage für den Linux-Terminalserver installieren
Als Basis für den Linux-Terminalserver verwenden wir in dieser Anleitung Docker. Das Installieren und Einrichten erfordert Root-Rechte, sodass Sie entweder eine Shell mit Root-Rechten brauchen oder Sie führen die Befehle mit sudo aus. Der erste Schritt für den Linux-Terminalserver ist die Installation von Docker mit:
sudo apt install docker.io && sudo apt install docker-compose
Selbstverständlich ist es sinnvoll den Server zuvor auf den aktuellsten Stand zu bringen:
sudo apt update && sudo apt upgrade
In einer einfachen Struktur wird Benutzern in kleinen Umgebungen jeweils ein eigener Linux-Desktop zur Verfügung gestellt, der sich vom Benutzer anpassen lässt. Dazu sollte auf dem Linux-Server zunächst für jeden Desktop ein Verzeichnis vorhanden sein, in dem die jeweiligen Daten des virtuellen Desktops liegen. Das geht im Terminal zum Beispiel mit:
mkdir /desktop1
mkdir /desktop2
usw.
Mit Webtops erhält jeder Anwender seinen eigenen Linux-Desktop im Netzwerk
Sie können übrigens auf jedem der Desktops eine andere Distribution installieren, wenn Sie das möchten. Zu Bereitstellen verwenden wir das Projekt Webtops, das auf dem Docker-Hub verfügbar ist. Auf der Seite sind die verschiedenen Distributionen zu sehen, auf deren Basis jeder Anwender einen eigenen Webtop/virtuellen Linux-Desktop erhält.

Standardmäßig nutzt das Webtop-Projekt XFCE mit Alpine. Es stehen aber eine Reihe weiterer Umgebungen zur Verfügung, wie zum Beispiel KDE mit Ubuntu, Arch-Linux oder Fedora.
Docker-Compose-Datei für den ersten virtuellen Desktop erstellen
Um einen virtuellen Linux-Desktop bereitzustellen, wird zunächst eine neue Docker-Compose-Datei erstellt, zum Beispiel mit dem Editor nano:
nano docker-compose.yaml
Jetzt nehmen Sie die Einstellungen für die Linux-Desktops vor, indem Sie den Inhalt der Datei anpassen. Verschiedene Vorlagen sind auf der Docker-Hub-Seite des Projektes zu finden.

Wichtig ist, dass in der Spalte image: lscr.io/linuxserver/webtop:latest der richtig Tag für den virtuellen Desktop angegeben ist. Die Tags der einzelnen Distributionen sind wiederum auf der Docker-Hub-Seite des Projektes zu finden. Bei container_name geben Sie den Namen des Containers für den jeweiligen virtuellen Desktop an. Dieser sollte idealerweise dem Namen des erstellten Verzeichnisses entsprechen. Die Zeitzone des Desktops steuert die Zeile TZ=. Hier ist in Deutschland die Einstellung TZ=Europe/Berlin die richtige. Außerdem sollten Sie unter KEYBOARD das deutsche Tastaturlayout einstellen.
Im Bereich Volumes hinterlegen Sie die Pfade für die virtuellen Desktops. Hier verwenden Sie die Pfade, die Sie im Vorfeld angelegt haben. Zusätzlich ist es möglich für unterschiedliche Desktops verschiedene Ports für den Zugriff zu nutzen. Der Arbeitsspeicher lässt sich ebenfalls in der YAML-Datei des virtuellen Desktops festlegen.
Virtuellen Desktop mit Docker Compose erstellen
Nachdem Sie die Docker-Compose-Datei bearbeitet haben, starten Sie als nächstes Docker-Compose:
docker-compose up -d
Das Tool erstellt Container anhand der Datei docker-compose.yaml.

Der Vorgang dauert einige Zeit. Danach meldet Docker Compose, dass der Desktop bereitsteht, den Sie unter http://<IP-Adresse>:3000 finden.
Virtueller Desktop in der Praxis
In der Praxis sollten Sie darüber nachdenken, mit HTTPS die Sicherheit zu verbessern und auch eine Authentifizierung einzubauen. Die entsprechenden Optionen dazu gibt es auf der Docker-Hub-Seite des Projektes. Auch Audiowiedergabe und andere Funktionen lassen sich nutzen. Anwender können auf dem virtuellen Desktop Programme installieren, wie bei herkömmlichen Linux-Systemen.

Benutzer sollten in ihren Desktops das Standardkennwort abändern. Wenn Sie in der URL noch die Erweiterung „?login=true“ verwenden, erzwingen Sie die Anmeldung. Nun kennen Sie die Grundlagen virtueller Linux-Desktops mit Webtop. Von hier aus haben Sie zahlreiche Möglichkeiten, die VDI nach Ihren Vorstellungen anzupassen. So gibt es Optionen für Hardwarebeschleunigung und Unterstützung für NVIDIA-Grafikkarten, wenn Ihre Anwender GPUs benötigen.