Container & VMs

Pods 3.0: Grafische Container-Verwaltung für Docker und Podman

Einleitung

Container-Technologien wie Docker und Podman haben die Art, wie wir Software bereitstellen und verwalten, grundlegend verändert. Sie ermöglichen es, Anwendungen in isolierten Umgebungen mit ihren eigenen Abhängigkeiten auszuführen, ohne dabei die Hauptsystem zu belasten. Während die Kommandozeile für viele Administratoren das bevorzugte Werkzeug ist, kann die Verwaltung mehrerer Container schnell unübersichtlich werden.

Hier kommt Pods ins Spiel – eine moderne grafische Benutzeroberfläche, die in Rust entwickelt wurde und sowohl Docker als auch Podman unterstützt. Mit der neuen Version 3.0 bietet Pods eine einheitliche Oberfläche zur Verwaltung von Containern, Images und Pods über verschiedene Container-Engines hinweg.

Voraussetzungen

Für die Nutzung von Pods benötigen Sie folgende Komponenten:

  • Ein Linux-System (getestet auf Fedora, Ubuntu, Debian)
  • Docker oder Podman installiert
  • Flatpak für die Installation von Pods
  • Aktivierte Container-Sockets (bei Podman erforderlich)
  • Grundkenntnisse im Umgang mit Containern

Installation der Voraussetzungen

Auf Ubuntu/Debian-Systemen installieren Sie Podman mit:

sudo apt update
sudo apt install podman

Für Docker verwenden Sie:

sudo apt install docker.io
sudo systemctl enable --now docker
sudo usermod -aG docker $USER

Auf Fedora ist Podman bereits vorinstalliert. Aktivieren Sie den Podman-Socket mit:

systemctl --user enable --now podman.socket

Installation von Pods

Die einfachste Methode zur Installation von Pods ist über Flathub. Stellen Sie zunächst sicher, dass Flatpak auf Ihrem System installiert ist:

sudo apt install flatpak
flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo

Installieren Sie anschließend Pods:

flatpak install flathub com.github.marhkb.Pods

Starten Sie die Anwendung mit:

flatpak run com.github.marhkb.Pods

Erste Einrichtung und Verbindung

Neue Verbindung erstellen

Nach dem ersten Start von Pods werden Sie mit einem Willkommensbildschirm begrüßt. Klicken Sie auf „Neue Verbindung“, um eine Verbindung zu Ihrer Container-Engine einzurichten.

Pods bietet vorkonfigurierte Optionen für:

  • Podman Unix Socket: Standardmäßig unter unix:///run/user/1000/podman/podman.sock
  • Docker Unix Socket: Normalerweise unter unix:///var/run/docker.sock
  • Benutzerdefinierte URL: Für Remote-Verbindungen oder alternative Konfigurationen

Geben Sie der Verbindung einen aussagekräftigen Namen und wählen Sie eine Farbe zur besseren Unterscheidung, falls Sie mehrere Container-Engines verwenden.

Podman-Socket aktivieren

Falls Sie Podman verwenden und noch keinen Socket aktiviert haben, führen Sie folgende Befehle aus:

# Socket für den aktuellen Benutzer aktivieren
systemctl --user enable podman.socket
systemctl --user start podman.socket

# Status überprüfen
systemctl --user status podman.socket

Container-Verwaltung mit Pods

Container-Übersicht

Nach erfolgreicher Verbindung zeigt Pods alle verfügbaren Container in einer übersichtlichen Liste an. Für jeden Container werden wichtige Informationen angezeigt:

  • Container-Name und Status (laufend/gestoppt)
  • Verwendetes Image
  • Erstellungsdatum
  • Netzwerk-Ports
  • Ressourcenverbrauch (CPU, Arbeitsspeicher)

Container-Operationen

Pods ermöglicht verschiedene Aktionen direkt über die grafische Oberfläche:

  • Starten/Stoppen: Toggle-Button für schnelles An- und Ausschalten
  • Neustart: Container neu starten
  • Pausieren: Container temporär anhalten
  • Beenden: Forciertes Stoppen des Containers
  • Löschen: Vollständiges Entfernen des Containers

Container umbenennen

Automatisch generierte Container-Namen sind oft kryptisch. Pods erlaubt das einfache Umbenennen:

  1. Klicken Sie auf das Stift-Symbol neben dem Container-Namen
  2. Geben Sie einen neuen, aussagekräftigen Namen ein
  3. Bestätigen Sie mit Enter

Mehrfachauswahl und Batch-Operationen

Für die gleichzeitige Verwaltung mehrerer Container bietet Pods einen Mehrfachauswahl-Modus:

  1. Klicken Sie auf das Häkchen-Symbol in der oberen Menüleiste
  2. Wählen Sie die gewünschten Container durch Anklicken aus
  3. Führen Sie die gewünschte Aktion (Start, Stopp, Löschen) für alle ausgewählten Container gleichzeitig aus

Image-Verwaltung

Image-Übersicht

Im Images-Bereich erhalten Sie detaillierte Informationen über alle verfügbaren Container-Images:

  • Image-ID und Tags
  • Erstellungsdatum
  • Speicherverbrauch
  • Verwendete Befehle

Image-Details inspizieren

Pods bietet umfangreiche Inspektionsmöglichkeiten:

  • Eigenschaften: Strukturierte Ansicht aller Image-Metadaten
  • Historie: Chronologie der Image-Layers
  • Repository-Tags: Alle verfügbaren Tags des Images

Neue Images laden

Sie können neue Images direkt über Pods laden:

  1. Wechseln Sie zum Images-Bereich
  2. Klicken Sie auf „Image laden“ oder „Pull“
  3. Geben Sie den Image-Namen ein (z.B. nginx:latest)
  4. Bestätigen Sie den Download

Pod-Verwaltung

Pods (Gruppen von Containern) sind besonders in Podman nützlich, da sie Container ermöglichen, Netzwerk und Ressourcen zu teilen:

Neuen Pod erstellen

  1. Navigieren Sie zum Pod-Bereich
  2. Klicken Sie auf „Neuer Pod“
  3. Geben Sie einen Namen und optional Port-Mappings an
  4. Fügen Sie Container zum Pod hinzu

Pod-Operationen

Ähnlich wie bei einzelnen Containern können Sie Pods als Einheit verwalten:

  • Alle Container im Pod gleichzeitig starten/stoppen
  • Pod-weite Netzwerk-Konfiguration
  • Gemeinsame Ressourcen-Limits

Wartung und Bereinigung

Gestoppte Container bereinigen

Pods bietet eine intelligente Bereinigungsfunktion für nicht mehr benötigte Container:

  1. Klicken Sie auf das Radiergummi-Symbol in der oberen Leiste
  2. Wählen Sie „Gestoppte Container bereinigen“
  3. Nutzen Sie die Kalender-Ansicht, um nur Container zu löschen, die vor einem bestimmten Datum gestoppt wurden
  4. Bestätigen Sie die Bereinigung

Diese Funktion ist besonders nützlich, um Speicherplatz freizugeben, ohne versehentlich wichtige Container zu löschen.

Automatische Bereinigung

Sie können auch Bereinigungsregeln definieren:

  • Löschen von Containern nach bestimmter Inaktivitätszeit
  • Automatisches Entfernen ungenutzter Images
  • Bereinigung von Build-Caches

Überprüfung

Um sicherzustellen, dass Pods korrekt funktioniert, führen Sie folgende Tests durch:

Grundfunktionen testen

# Einen Test-Container erstellen
podman run -d --name test-nginx nginx:latest

# Status in der Kommandozeile prüfen
podman ps

# Den Container über Pods verwalten
# Stoppen Sie den Container in Pods und prüfen Sie erneut:
podman ps -a

Verbindungstest

Überprüfen Sie, ob Pods erfolgreich mit Ihrer Container-Engine kommuniziert:

  1. Erstellen Sie einen neuen Container über die Kommandozeile
  2. Aktualisieren Sie die Pods-Ansicht
  3. Der neue Container sollte sofort in Pods sichtbar sein

Troubleshooting

Verbindungsprobleme

Problem: Pods kann keine Verbindung zu Podman herstellen

Lösung:

# Socket-Status überprüfen
systemctl --user status podman.socket

# Socket neu starten
systemctl --user restart podman.socket

# Berechtigungen überprüfen
ls -la /run/user/$(id -u)/podman/

Problem: Docker-Verbindung funktioniert nicht

Lösung:

# Docker-Daemon Status prüfen
sudo systemctl status docker

# Benutzer zur Docker-Gruppe hinzufügen
sudo usermod -aG docker $USER

# Neu anmelden oder newgrp verwenden
newgrp docker

Performance-Probleme

Bei vielen Containern kann Pods langsam werden:

  • Reduzieren Sie die Aktualisierungsfrequenz in den Einstellungen
  • Bereinigen Sie regelmäßig ungenutzte Container und Images
  • Verwenden Sie Filter, um nur relevante Container anzuzeigen

Speicherprobleme

Container und Images können viel Speicherplatz verbrauchen:

# Speicherverbrauch analysieren
podman system df

# Ungenutzte Ressourcen bereinigen
podman system prune -a

# Spezifische Image-Bereinigung
podman image prune

Fazit

Pods 3.0 bietet eine ausgereifte grafische Lösung für die Container-Verwaltung, die sowohl für Einsteiger als auch erfahrene Administratoren geeignet ist. Die Unterstützung für sowohl Docker als auch Podman macht es zu einem vielseitigen Werkzeug in heterogenen Umgebungen.

Die intuitive Benutzeroberfläche reduziert die Komplexität der Container-Verwaltung erheblich, ohne dabei auf Funktionalität zu verzichten. Besonders die Batch-Operationen und die intelligente Bereinigungsfunktion erleichtern die tägliche Arbeit mit Containern.

Für Teams, die von der reinen Kommandozeilenverwaltung zu einer benutzerfreundlicheren Lösung wechseln möchten, ist Pods eine ausgezeichnete Wahl. Die Anwendung ergänzt die gewohnten CLI-Tools perfekt und bietet einen klaren Überblick über die Container-Landschaft.

Mit seiner modernen Architektur und der aktiven Entwicklung ist Pods gut positioniert, um mit den sich entwickelnden Anforderungen der Container-Technologie Schritt zu halten.

Quelle: It’s FOSS – This Simple GUI Tool Takes the Pain Out of Docker and Podman