Die eigentliche Stärke von Incus zeigt sich im täglichen Einsatz. Mit wenigen Befehlen lassen sich vollständige Linux-Systeme innerhalb weniger Sekunden bereitstellen.
Dabei lädt Incus zunächst ein passendes Image herunter und erstellt daraus einen Container. Anschließend kann dieser wie ein eigenständiger Linux-Server verwaltet werden.
In diesem Artikel verwenden wir Debian 13 als Beispiel. Die Vorgehensweise ist bei anderen Distributionen nahezu identisch.
Was ist ein Image?
Bevor ein Container erstellt werden kann, benötigt Incus ein sogenanntes Image.
Ein Image ist eine vorbereitete Vorlage eines Betriebssystems. Es enthält bereits alle notwendigen Dateien für einen neuen Container.
Man kann sich ein Image wie eine Installations-DVD vorstellen – mit dem Unterschied, dass die Installation innerhalb weniger Sekunden abgeschlossen ist.
Incus stellt zahlreiche Images bereit, darunter:
- Debian
- Ubuntu
- Alpine Linux
- Fedora
- Rocky Linux
- AlmaLinux
- Arch Linux
- openSUSE
Beim ersten Einsatz lädt Incus das gewünschte Image automatisch herunter und speichert es lokal zwischen.
Verfügbare Images anzeigen
Alle verfügbaren Images lassen sich durchsuchen.
Alle Distributionen anzeigen:
incus image list images:
Nur Debian-Images anzeigen:
incus image list images: debian
Ubuntu anzeigen:
incus image list images: ubuntu
Die Ausgabe enthält unter anderem:
- Name
- Version
- Architektur
- Veröffentlichungsdatum
Den ersten Container erstellen
Nun wird der erste Container erstellt.
Für Debian 13 genügt folgender Befehl:
incus launch images:debian/13 mein-erster-container
Incus führt nun automatisch mehrere Schritte aus:
- Image herunterladen (nur beim ersten Mal)
- Container erstellen
- Netzwerk einrichten
- Storage zuweisen
- Container starten
Bereits nach wenigen Sekunden steht der Container zur Verfügung.
Laufende Container anzeigen
Mit folgendem Befehl werden alle Container und virtuellen Maschinen angezeigt:
incus list
Beispiel:
+--------------------------+---------+----------------------+-----------+ | NAME | STATE | IPV4 | TYPE | +--------------------------+---------+----------------------+-----------+ | mein-erster-container | RUNNING | 10.218.174.15 (eth0) | CONTAINER | +--------------------------+---------+----------------------+-----------+
Hier erkennt man sofort:
- Name
- Status
- IP-Adresse
- Typ
Informationen zum Container anzeigen
Weitere Details liefert:
incus info mein-erster-container
Angezeigt werden unter anderem:
- CPU-Auslastung
- Arbeitsspeicher
- Netzwerk
- Speicherplatz
- Prozesse
- Uptime
Dieser Befehl ist besonders hilfreich bei der Fehlersuche.
Eine Shell im Container öffnen
Jetzt kann direkt auf den Container zugegriffen werden.
Variante 1:
incus shell mein-erster-container
Alternativ:
incus exec mein-erster-container -- bash
Nun befindet man sich direkt innerhalb des Containers.
Die Eingabeaufforderung könnte beispielsweise so aussehen:
root@mein-erster-container:~#
Von hier aus kann der Container wie ein normaler Debian-Server administriert werden.
Das System im Container aktualisieren
Nach dem ersten Login empfiehlt sich ein Update.
apt update apt upgrade -y
Da es sich um einen vollständigen Debian-Container handelt, stehen sämtliche bekannten Werkzeuge zur Verfügung.
Netzwerk testen
Zunächst prüfen wir, ob der Container eine IP-Adresse erhalten hat.
ip a
Alternativ:
ip addr
Nun testen wir die Internetverbindung.
ping -c 4 debian.org
Erfolgreiche Antworten zeigen, dass:
- Netzwerk funktioniert
- DNS funktioniert
- Internet erreichbar ist
Dateien zwischen Host und Container kopieren
Incus bietet komfortable Befehle zum Datenaustausch.
Datei zum Container kopieren:
incus file push test.txt mein-erster-container/root/
Datei vom Container herunterladen:
incus file pull mein-erster-container/root/test.txt .
Damit entfällt in vielen Fällen der Einsatz von SCP oder FTP.
Container stoppen
Soll der Container beendet werden:
incus stop mein-erster-container
Anschließend zeigt
incus list
den Status:
STOPPED
Container starten
Ein gestoppter Container lässt sich jederzeit wieder starten.
incus start mein-erster-container
Nach wenigen Sekunden ist das System wieder verfügbar.
Container neu starten
Für Konfigurationsänderungen oder Updates:
incus restart mein-erster-container
Der Neustart dauert meist nur wenige Sekunden.
Container löschen
Wird der Container nicht mehr benötigt, kann er entfernt werden.
incus delete mein-erster-container
Ist der Container noch aktiv:
incus delete mein-erster-container --force
Dabei werden sämtliche Daten des Containers gelöscht.
Soll der Container später erneut verwendet werden, empfiehlt sich vorher ein Snapshot oder Backup.
Mehrere Container erstellen
Incus verwaltet problemlos viele Container gleichzeitig.
Beispiele:
incus launch images:debian/13 webserver incus launch images:debian/13 datenbank incus launch images:ubuntu/24.04 testsystem
Mit
incus list
werden alle laufenden Systeme übersichtlich dargestellt.
Typische Fehler
Image wird nicht gefunden
Prüfen:
incus image list images:
Gegebenenfalls wurde der Name oder die Versionsnummer falsch angegeben.
Keine Netzwerkverbindung
Bridge prüfen:
incus network list
Container-IP prüfen:
incus list
DNS testen:
ping debian.org
Container startet nicht
Status anzeigen:
incus info mein-erster-container
Logdateien prüfen:
journalctl -u incus
Nützliche Befehle im Überblick
incus image list images:
Zeigt alle verfügbaren Images an.
incus launch
Erstellt und startet einen neuen Container.
incus list
Zeigt alle Container und virtuellen Maschinen an.
incus info
Liefert detaillierte Informationen zu einem Container.
incus shell
Öffnet eine Shell im Container.
incus exec
Führt einen Befehl innerhalb eines Containers aus.
incus stop
Stoppt einen Container.
incus start
Startet einen Container.
incus restart
Startet einen Container neu.
incus delete
Löscht einen Container.
incus file push
Kopiert Dateien vom Host in einen Container.
incus file pull
Kopiert Dateien vom Container auf den Host.
Mit Incus lässt sich innerhalb weniger Sekunden ein vollständiger Linux-Container erstellen und verwalten. Dank der automatischen Bereitstellung von Images, Netzwerk und Speicher entfällt der aufwendige Installationsprozess klassischer virtueller Maschinen. Bereits mit wenigen Befehlen steht ein einsatzbereites Debian-System zur Verfügung, das sich wie ein eigenständiger Server administrieren lässt.
Im nächsten Teil der Serie beschäftigen wir uns mit der dauerhaften Konfiguration von Containern. Dabei lernst du, wie du CPU- und RAM-Limits setzt, den Autostart aktivierst, Hostnamen anpasst und weitere Ressourcen gezielt verwaltest.