Znuny Docker – Setup, docker-compose & Befehle (2026)
Znuny Ticketsystem mit Docker
Abschnitt betitelt „Znuny Ticketsystem mit Docker“Einführung
Abschnitt betitelt „Einführung“Mit Docker können Sie Znuny in isolierten Containern betreiben: gleiche Laufzeitumgebung auf jedem Host, klare Trennung von Diensten und einfaches Hoch- und Herunterfahren des Stacks. Für Installation, Upgrade und produktive Architektur ist die offizielle Znuny-Dokumentation maßgeblich; diese Seite fasst übliche Docker-Arbeitsschritte und Befehle zusammen.
Docker vs. klassische Installation
Abschnitt betitelt „Docker vs. klassische Installation“Kurz die praktischen Unterschiede:
- Konfiguration: Statt Pakete direkt auf dem Server liegt vieles in
docker-compose.yml, Umgebungsvariablen und Volumes. - Persistenz: Datenbank, Dateianhänge und Konfiguration müssen in Volumes oder gebundenen Host-Verzeichnissen liegen — sonst sind sie nach
docker compose downoder Container-Erneuerung weg. - Updates: Image aktualisieren, danach typischerweise Datenbank-Migration und Cache aus der Doku ausführen — nicht einfach nur „Container neu starten“.
- Netzwerk/TLS: Reverse Proxy (z. B. Traefik, Nginx) oder eingebundene Ports je nach Ihrem Compose-Setup.
Der genaue Satz an Diensten (Web, Datenbank, Scheduler, Suche) richtet sich nach dem verwendeten Compose-File oder Helm-Chart — nicht jedes Setup listet dieselben Container.
Typische Container in Compose-Stacks
Abschnitt betitelt „Typische Container in Compose-Stacks“Viele Znuny-Docker-Setups verteilen die Arbeit auf mehrere Dienste. Namen wie znuny_web_1 sind nur ein Beispiel — Docker Compose vergibt Namen nach Projekt- und Servicenamen (oft <projekt>_<service>_1). Vor Befehlen immer mit docker ps prüfen, wie die Container bei Ihnen heißen.
Häufige Rollen:
- Web / App: HTTP-Zugang zur Anwendung (z. B. Perl/PSGI hinter einem App-Server oder Apache/Nginx im Container).
- Datenbank: z. B. MariaDB oder PostgreSQL — mit persistentem Volume.
- Daemon / Scheduler: Hintergrundjobs (E-Mail, Generic-Agent, Eskalationen), je nach Stack ein eigener Container oder Teil des Web-Services.
- Cache: z. B. Redis — kann je nach Setup fehlen oder integriert sein.
- Volltextsuche: z. B. Elasticsearch oder OpenSearch — nicht in jedem Minimal-Setup vorhanden.
- Reverse-Proxy (optional): Nginx oder Traefik für HTTPS und Routing nach außen.
Was sind Docker-Container?
Abschnitt betitelt „Was sind Docker-Container?“Container isolieren Prozesse und Dateisystem-Sichten, nutzen aber denselben Host-Kernel — sie sind dadurch leichter als vollständige virtuellen Maschinen. Persistente Daten liegen in Volumes oder gemounteten Verzeichnissen; das Container-Dateisystem selbst ist vergänglich.
Docker-Dienst steuern (Linux mit systemd)
Abschnitt betitelt „Docker-Dienst steuern (Linux mit systemd)“Unter Linux mit systemd ist Docker üblicherweise ein Systemdienst:
- Dienst starten:
sudo systemctl start docker - Autostart aktivieren:
sudo systemctl enable docker - Dienst stoppen:
sudo systemctl stop docker - Status prüfen:
sudo systemctl status docker
Auf Docker Desktop (Windows/macOS) übernimmt die Anwendung den Daemon — dort entfallen diese systemctl-Befehle.
Container listen und steuern
Abschnitt betitelt „Container listen und steuern“- Laufende Container:
docker ps - Alle Container:
docker ps -a - Images:
docker images - Logs eines Containers:
docker logs <container-name>(fortlaufend:docker logs -f <container-name>) - Einzelnen Container starten/stoppen:
docker start <name>/docker stop <name>
Mit Docker Compose (v2, Plugin):
- Stack im Verzeichnis der Compose-Datei starten:
docker compose up -d - Stoppen:
docker compose down(ohne Volumes zu löschen, sofern nicht--volumesangegeben)
Znuny-Konsolenbefehle im Container
Abschnitt betitelt „Znuny-Konsolenbefehle im Container“Shell im richtigen Container
Abschnitt betitelt „Shell im richtigen Container“Zuerst den passenden Container ermitteln:
docker psDann interaktiv eine Shell öffnen (Namen anpassen):
docker exec -it znuny_web_1 bashMit Compose kann es kürzer sein (Servicename aus der docker-compose.yml):
docker compose exec web bashznuny.Console.pl ausführen
Abschnitt betitelt „znuny.Console.pl ausführen“Die CLI wird aus dem Znuny-Installationsverzeichnis im Container aufgerufen — oft unter /opt/znuny oder einem ähnlichen Pfad. Im Container nach dem Installationsroot suchen oder das Image-README lesen.
Beispiele:
bin/znuny.Console.pl --helpbin/znuny.Console.pl Maint::Database::Upgradebin/znuny.Console.pl Maint::Cache::Delete::: details Überblick Kommandozeile (CLI)
Die Kommandozeilenschnittstelle von Znuny basiert auf znuny.Console.pl — damit lassen sich administrative Aufgaben ohne Web-UI erledigen. Typische Einstiegspunkte:
- Help: Hilfe zu Befehlen.
- List: verfügbare Befehle auflisten.
- Search: nach Befehlen suchen.
Admin-Befehle (Auswahl)
Abschnitt betitelt „Admin-Befehle (Auswahl)“- Admin::Config::Update: Konfigurationswert setzen.
- Admin::Package::Install: Paket installieren.
- Admin::User::Add: Agent anlegen.
Entwicklung (Auswahl)
Abschnitt betitelt „Entwicklung (Auswahl)“- Dev::Code::Generate::ConsoleCommand: Gerüst für einen Konsolenbefehl erzeugen.
- Dev::Tools::CacheBenchmark: Benchmark der Cache-Backends.
Wartung (Auswahl)
Abschnitt betitelt „Wartung (Auswahl)“- Maint::Cache::Delete: Znuny-Cache löschen.
- Maint::Config::Rebuild: SysConfig neu aufbauen.
:::
::: details Pakete und Logs
- Dev::Package::Build: OPM aus einer SOPM-Quelle bauen.
- Maint::Log::Clear: Logdaten bereinigen.
Details zu Paketen und zur Konfiguration: offizielle Znuny-Dokumentation.
:::
::: details Migration und Updates
Beim Umstieg von OTRS oder bei Upgrades gelten besondere Reihenfolgen und Backups — siehe die Hersteller-Dokumentation zu Migration und Release Notes.
Beispiele für Konsolenbefehle aus der Znuny-Welt (Verfügbarkeit je nach Version prüfen):
- Dev::Tools::Migrate::OTRSToZnuny: Unterstützung bei der Aufbereitung von Quellen/Paketen im Znuny-Kontext (siehe Doku).
- Admin::Package::UpgradeAll: Pakete aus den konfigurierten Repos aktualisieren.
Immer Backup von Datenbank und Dateisystem/Volumes vor größeren Schritten einplanen.
:::
Volumes und Netzwerke
Abschnitt betitelt „Volumes und Netzwerke“- Volume anlegen:
docker volume create <name> - Volumes auflisten:
docker volume ls - Netzwerke:
docker network ls
Für Backups sind die dem Datenbank-Container zugeordneten Volumes sowie alle gemounteten Verzeichnisse mit Znuny-Daten (var, Anhänge, ggf. Konfiguration) relevant — nicht nur ein Datenbank-Dump.
Weiterführende Hinweise
Abschnitt betitelt „Weiterführende Hinweise“- Offizielle Dokumentation und Installationspfade: doc.znuny.org.
- Compose-Projektname und Servicenamen immer aus Ihrer eigenen
docker-compose.ymlunddocker psableiten — Copy-Paste von Container-Namen aus Anleitungen schlägt fehl, wenn sich das Projekt unterscheidet.