Docker-Installation
Zammad kann per Docker Compose installiert werden. Sie können sogar grafische Docker-Oberflächen wie Portainer verwenden.
INFO
Wir bieten keinen Support in Bezug auf Docker (-Compose) oder Portainer-spezifische Probleme. Wenn Sie sich dafür entscheiden, Zammad per Docker zu installieren, kann Support nur für Zammad als Anwendung geleistet werden.
Voraussetzungen
Make sure your Docker Compose setup matches the requirements you can find in the README of Zammad's Docker Compose repository.
Make sure to have at least 4 GB of RAM to run the containers.
Passen Sie die Einstellungen Ihres Hosts an, damit Elasticsearch ordnungsgemäß läuft:
shsudo sysctl -w vm.max_map_count=262144
Installation per Docker Compose
Schritt 1: Klonen des GitHub Repo
sh
git clone https://github.com/zammad/zammad-docker-compose.gitStellen Sie sicher, dass Sie git pull regelmäßig ausführen, um Aktualisierungen zu erhalten. Alternativ können Sie die Dateien auch von der Release Seite herunterladen.
Schritt 2: Umgebung nach Bedarf anpassen
Falls unsere Standardumgebung nicht Ihren Vorstellungen entspricht, können Sie den Stack mithilfe von vordefinierten Szenarien anpassen und Umgebungsvariablen verwenden. Weitere Informationen finden Sie im Abschnitt Anpassung weiter unten.
Schritt 3: Starten des Stacks
sh
cd zammad-docker-composesh
docker compose up -dOptional: Use an additional .yml file to use a pre-defined scenario. Read on in the Customizing the Zammad Stack section.
Nachdem der Stack hochgefahren ist, können Sie über den konfigurierten Docker-Host und -Port auf Zammad zugreifen, z.B. http://localhost:8080/.
Installation mit Portainer
Der einfachste Weg, Zammad zum Laufen zu bringen, ist über eine grafische Docker-Oberfläche. Wir empfehlen Portainer. Installationsanweisungen finden Sie in der Portainer Dokumentation.
Schritt 1: Stack hinzufügen
Wählen Sie in der Portainer-GUI (z.B. https://yourdomain.tld:9443) Ihre Zielumgebung aus, wählen Sie Stacks und klicken Sie auf Add stack, wie Sie im Screenshot unten sehen können.

Schritt 2: Aus dem Repository erstellen
Wechseln Sie zur Repository "Build Method" und geben Sie die folgenden Informationen an:
- Name: Geben Sie einen Namen für den Stack ein
- Repository URL:
https://github.com/zammad/zammad-docker-compose - Repository reference:
refs/heads/master - Compose path:
docker-compose.yml(default)
Falls unsere Standardumgebung nicht Ihren Vorstellungen entspricht, können Sie den Stack mithilfe von vordefinierten Szenarien anpassen und Umgebungsvariablen verwenden. Weitere Informationen finden Sie im Abschnitt Anpassung weiter unten.

Schritt 3: Starten des Stacks
Finally, click the Deploy the stack button. The first time, it may take some time until the Docker images are fetched.
Nachdem der Stack hochgefahren ist, können Sie über den konfigurierten Docker-Host und -Port auf Zammad zugreifen, z.B. http://localhost:8080/.
Stack per HTTPS freigeben
To publish a Zammad stack on the internet, it needs to be secured via the HTTPS protocol. To achieve that without modifying the Zammad stack, you can:
- Verwenden Sie einen Reverse-Proxy wie Nginx Proxy Manager (NPM). Er hat eine grafische Benutzeroberfläche, die eine einfache Let's Encrypt-Integration ermöglicht.
- Verwenden Sie einen Cloudflare-Tunnel, der eine SSL-Terminierung ermöglicht.
Beide Szenarien werden auf der separaten Seite Docker Compose Szenarien beschrieben.
Anpassen des Zammad-Stacks
Der Zammad-Stack kann durch das Laden zusätzlicher Szenario-Dateien für gängige Anwendungsfälle angepasst werden. Sie können den Stack zum Beispiel mit einem integrierten Nginx Proxy Manager (NPM) oder mit deaktivierten PostgreSQL- oder Elasticsearch-Diensten bereitstellen, falls Sie diese Dienste bereits nutzen.
Bitte lesen Sie unter Docker Compose Szenarien weiter.
Um den Stack und die Einstellungen anzupassen, verwenden Sie Docker-spezifische Umgebungsvariablen.
Ausführen von Befehlen im Stack
Führen Sie Befehle in Ihrem Docker Stack aus, indem Sie rails oder rake über eine der folgenden Methoden mit Hilfe von bundle exec aufrufen.
Einen bestimmten Befehl direkt ausführen:
sh
docker compose run --rm zammad-railsserver bundle exec rails r '...your rails command here...'Die Rails-Console starten, um Rails-Befehle auszuführen:
sh
docker compose run --rm zammad-railsserver bundle exec rails cVia docker compose exec:
sh
docker compose exec zammad-railsserver bundle exec rails r '...your rails command here...'TIP
Wenn Sie Informationen vom Rails-Server abrufen müssen, können Sie z.B, vor den Rails-Befehl pp (pretty print) setzen. Dies führt zu einer Ausgabe in Ihrem Terminal.