Debian

Bei der Auswahl der Linux Distribution sind viele Firmen durch verschiedenste Vorgaben beeinflusst.

Ich habe mich im Vorkapitel auf kurze Differenzierungen und Einschätzungen beschränkt und werde mich im Weiteren auf Debian konzentrieren.

Install: Docker Engine

Dokumentation Docker für die Installation Docker Engine on Debian: https://docs.docker.com/engine/install/debian/

Docker Engine Install

Docker Engine Install

Den Einstieg führe ich of mit einer aktuellen stabilen Debian Installation durch (aktuell: Debian 12 Bookworm). Da greift man einfach mal zu einer virtuellen Umsetzung (in Seminaren oft Hyper-V unter Windows) und installiert Debian inklusive Gnome Desktop für eine erste einfache Bedienung. Später sind diese VMs natürlich ohne GUI und reine Serverinstallationen.

Wichtig: wir installieren die Docker Engine und nicht wie unter Windows mit WSL2 den Docker Desktop (hier: für Windows)!

Kurzanleitung:

  • Debian aktualisieren und nötige Tools / Pre-Installationen checken

  • Docker Repo für Debian inkl. Key hinzufügen

  • Debian Repos aktualisieren / neues Repo nutzen

  • Docker Engine (Docker CE) und weitere vorgeschlagene Paket installieren

  • Hello World testen: sudo docker run hello-world

  • für sudo-lose Docker-Nutzung wird User Mitglied der Gruppe docker: sudo usermod -aG docker $USER (und Neustart)

Nochmals: Bitte hier die Docker Engine installieren und nicht die Software Docker Desktop für Linux!

Für den Docker Desktop für Linux würde man jetzt schon eine „Nested VM“ benötigen - also eine VM mit eigener Virtualisierungsfähigkeit. Das ist mit Hyper-V oder anderen Virtualisieren kein Problem - benötigt aber weiter Konfigurationen!

Install: Docker Desktop

Der Docker Desktop wird - anders als die Docker Engine - eine Virtuelle Maschine nutzen. Hierzu muss für die Linux Umgebung die Anforderung an Virtualisierungsumgebung erfüllt sein.

Die Anleitungen findet man unter https://docs.docker.com/desktop/install/linux-install/.

Erster Test: lsmod | grep kvm - in einer Standard Hyper-V VM erhalten wir hier leider keine gewünschte Rückmeldung!

Über die PowerShell aktivieren wir die Unterstützung von Nested Virtualization!

Set-VMProcessor -VMName vmname -ExposeVirtualizationExtensions $true (Bitte vnname anpassen!)

Wir kontrollieren die gemachte Einstellung:

Get-VMProcessor -VMName tpl-deb12docker | fl (in der PowerShell)

Und wieder in der VM testen:

lsmod | grep kvm (in der VM - bekommen wir Ausgaben dann OK und Fortsetzung der Installation)

Für die Nutzung der KVM-Technik sollte der User noch Mitglieder der Gruppe kvm werden:

sudo usermod -aG kvm $USER (siehe ggf. vorher welche Gruppe /dev/kvm zugewiesen ist)

Hinweis: bei virtuellen Maschinen - insbesondere mit Desktop Environments - funktionieren die Aktualisierungen der Gruppenzugehörigkeiten (oft) erst nach einem Neustart der VM.

Für die Integration des Docker Desktop in die Gnome Shell (siehe später Docker Desktop Icon in Oberer Gnome Leiste) muss man AppIndicator und KStatusNotifierItem per Klicks in der Gnome Shell hinzufügen. Das ist in der Anleitung entsprechend verlinkt.

Danach einfach das DEB-Paket herunterladen und installieren. Der Docker Desktop lässt sich einfach über den Desktop starten.

Spätestens jetzt ist der Context der Docker-Umgebung wichtig bzw. nutzbar.

docker context ls (zeigt die genutzte Umgebung)

Docker Context

Docker Context

Im Screenshot kann man die Gnome Integration für den Docker Desktop sehen. Bei gestartetem Docker Desktop ist der Kontext dann auch auf desktop-linux geändert. Es handelt sich um komplett getrennte Docker Arbeitsbereiche.