Zum Inhalt springen

OTOBO Installation Debian mit Docker Compose

Diese Anleitung beschreibt die vollständige Installation von OTOBO auf Debian mit Docker und Docker Compose. Der offizielle otobo-docker-Stack bündelt alle benötigten Dienste (Webserver, Datenbank, Elasticsearch, Redis und optional Nginx für HTTPS), sodass Sie OTOBO in wenigen Minuten betriebsbereit haben.

  • Debian 11 (Bullseye)
  • Debian 12 (Bookworm)

Ältere Versionen (Debian 9/10) funktionieren grundsätzlich ebenfalls, sofern eine aktuelle Docker-Version installiert werden kann.

KomponenteMinimumEmpfehlung (Produktion)
CPU2 Kerne4+ Kerne
RAM4 GB8 GB oder mehr
Festplatte20 GB frei40 GB+ (SSD)
Docker19.03.13aktuelle Version
Docker Composev2aktuelle Version
Git2.17aktuelle Version

[!NOTE] Elasticsearch ist Teil des Stacks und benötigt vergleichsweise viel Arbeitsspeicher. Planen Sie für produktive Umgebungen mindestens 8 GB RAM ein.

Schritt 1: Docker, Docker Compose und Git installieren

Abschnitt betitelt „Schritt 1: Docker, Docker Compose und Git installieren“

Aktualisieren Sie zunächst die Paketquellen und installieren Sie die benötigten Pakete:

Terminal-Fenster
sudo apt update
sudo apt install -y docker.io docker-compose-v2 git

[!NOTE] Auf älteren Debian-Versionen ohne das Paket docker-compose-v2 installieren Sie stattdessen das offizielle Docker-Repository (siehe docs.docker.com) oder verwenden Sie das ältere docker-compose-Paket.

Aktivieren und starten Sie den Docker-Dienst, damit er automatisch beim Booten startet:

Terminal-Fenster
sudo systemctl enable --now docker

Optional: Fügen Sie Ihren Benutzer der Gruppe docker hinzu, damit Sie Docker-Befehle ohne sudo ausführen können (danach neu anmelden):

Terminal-Fenster
sudo usermod -aG docker $USER

Prüfen Sie die Installation:

Terminal-Fenster
docker --version
docker compose version

Das otobo-docker-Repository enthält die Docker-Compose-Konfiguration und Hilfsskripte. Verwenden Sie das Tag, das zu Ihrer gewünschten OTOBO-Version passt (z. B. rel-11_0 für die aktuelle 11.0-Reihe).

Terminal-Fenster
cd /opt
sudo git clone https://github.com/RotherOSS/otobo-docker.git --branch rel-11_0 /opt/otobo-docker
cd /opt/otobo-docker
ls -a # Kontrolle: u. a. README.md und die .docker_compose_env_*-Dateien sollten vorhanden sein

Die Datei .env ist die zentrale Konfigurationsdatei für Ihre OTOBO-Installation. Sie wird nicht automatisch erzeugt, sondern aus einer der mitgelieferten Beispieldateien kopiert:

  • .docker_compose_env_http – OTOBO über HTTP (einfachste Variante, z. B. hinter einem eigenen Reverse-Proxy)
  • .docker_compose_env_https – OTOBO über HTTPS mit integriertem Nginx-Reverse-Proxy

Für eine einfache HTTP-Installation:

Terminal-Fenster
sudo cp -p .docker_compose_env_http .env

Für HTTPS verwenden Sie stattdessen .docker_compose_env_https und hinterlegen ein Zertifikat (siehe Fortgeschrittene Installation).

Öffnen Sie die .env-Datei und setzen Sie ein sicheres Passwort für den Datenbank-Administrator:

Terminal-Fenster
sudo nano .env

Passen Sie die folgende Zeile an:

Terminal-Fenster
OTOBO_DB_ROOT_PASSWORD=<ihr_sicheres_passwort>

Dieses Passwort benötigen Sie später im Web-Installer, um die Datenbank und das OTOBO-Schema anzulegen.

Starten Sie den gesamten Stack im Hintergrund:

Terminal-Fenster
sudo docker compose up --detach

Beim ersten Start werden die Docker-Images von Docker Hub heruntergeladen – das kann je nach Verbindung einige Minuten dauern.

Überprüfen Sie anschließend, ob alle Dienste laufen (fünf bei HTTP, sechs bei HTTPS):

Terminal-Fenster
sudo docker compose ps

Schritt 6: Installation über den Web-Installer abschließen

Abschnitt betitelt „Schritt 6: Installation über den Web-Installer abschließen“

Rufen Sie den OTOBO-Installer im Browser auf:

http://<ihre-server-ip>/otobo/installer.pl

Folgen Sie den Schritten des Installers und beachten Sie dabei:

  • Wählen Sie als Datenbank eine neue MySQL-/MariaDB-Datenbank.
  • Als Datenbank-Root-Passwort verwenden Sie den Wert aus OTOBO_DB_ROOT_PASSWORD.
  • Lassen Sie den MySQL-Hostnamen auf db stehen – dies ist der interne Servicename des Datenbank-Containers.

Nach Abschluss können Sie sich am Agenten-Interface anmelden (Standardbenutzer root@localhost, das Passwort wird am Ende des Installers angezeigt).

OTOBO Admin-Bereich nach abgeschlossener Installation

OTOBO Docker-Container nach der Installation

  • OTOBO-Daemon prüfen: Der Daemon-Container übernimmt Hintergrundaufgaben (E-Mail-Abruf, Eskalationen, Cronjobs). Er läuft als eigener Container und sollte als „running“ angezeigt werden.
  • Firewall: Geben Sie die benötigten Ports frei (Port 80 für HTTP bzw. 443 für HTTPS), z. B. mit ufw allow 80/tcp.
  • In den Container wechseln (für CLI-Aufgaben):
Terminal-Fenster
sudo docker compose exec web bash

Elasticsearch startet nicht / Container beendet sich sofort

Elasticsearch benötigt einen erhöhten Wert für vm.max_map_count. Setzen Sie ihn dauerhaft:

Terminal-Fenster
sudo sysctl -w vm.max_map_count=262144
echo "vm.max_map_count=262144" | sudo tee /etc/sysctl.d/99-otobo-elasticsearch.conf

Port 80 oder 443 bereits belegt

Setzen Sie in der .env-Datei abweichende Ports über OTOBO_WEB_HTTP_PORT bzw. OTOBO_WEB_HTTPS_PORT und starten Sie den Stack neu.

Logs eines Dienstes ansehen

Terminal-Fenster
sudo docker compose logs -f web
sudo docker compose logs -f elastic

Stack neu starten oder stoppen

Terminal-Fenster
sudo docker compose restart
sudo docker compose stop

Für HTTPS-Konfiguration, Nginx-Anpassungen, Umgebungsvariablen, Updates und Backups lesen Sie die Fortgeschrittene Installation von OTOBO.

Möchten Sie OTOBO mit KI-gestützter Ticket-Klassifizierung kombinieren, finden Sie die Schritte unter OTOBO KI & Open Ticket AI.

OTOBO professionell installieren lassen

Sparen Sie Zeit und Risiken: Softoft übernimmt die schlüsselfertige Installation, Docker-Setup, Härtung und Konfiguration für Ihre Produktivumgebung.

Häufig gestellte Fragen

Welche Debian-Versionen werden für die OTOBO-Installation mit Docker Compose unterstützt und gibt es Besonderheiten bei älteren Versionen?

OTOBO unterstützt offiziell Debian 11 (Bullseye) und Debian 12 (Bookworm) für die Installation mittels Docker Compose. Diese Versionen bieten die beste Kompatibilität und die einfachste Installation der benötigten Docker-Pakete. Grundsätzlich können auch ältere Debian-Versionen wie Debian 9 oder Debian 10 verwendet werden. Die entscheidende Voraussetzung hierfür ist, dass eine aktuelle und kompatible Docker-Version auf dem System installiert werden kann. Bei älteren Debian-Versionen muss möglicherweise das offizielle Docker-Repository hinzugefügt werden, um die neuesten Docker-Pakete zu erhalten, da die Standard-Paketquellen veraltete Versionen enthalten könnten. Es ist immer ratsam, die neuesten stabilen Debian-Versionen zu verwenden, um von aktuellen Sicherheitsupdates und Paketversionen zu profitieren.\n\nQuellen\n- OTOBO Installation Debian mit Docker Compose

Welche Systemvoraussetzungen sind für eine OTOBO-Installation mit Docker Compose auf Debian zu beachten, insbesondere bezüglich Elasticsearch?

Für eine OTOBO-Installation mit Docker Compose auf Debian sind spezifische Systemvoraussetzungen zu beachten, um einen reibungslosen Betrieb zu gewährleisten. Minimal werden 2 CPU-Kerne, 4 GB RAM und 20 GB freier Festplattenspeicher empfohlen. Für produktive Umgebungen sollten Sie jedoch mindestens 4+ CPU-Kerne, 8 GB RAM oder mehr und 40 GB+ SSD-Speicher einplanen. Besonders wichtig ist der Arbeitsspeicherbedarf für Elasticsearch, das als integraler Bestandteil des Docker-Stacks läuft. Elasticsearch ist eine leistungsstarke Suchmaschine, die für ihre optimale Performance und Stabilität vergleichsweise viel RAM benötigt. Daher ist es entscheidend, für produktive OTOBO-Instanzen mindestens 8 GB RAM vorzusehen, um Engpässe und Leistungsprobleme zu vermeiden. Stellen Sie außerdem sicher, dass Docker (mindestens 19.03.13), Docker Compose (v2) und Git (mindestens 2.17) in aktuellen Versionen installiert sind.\n\nQuellen\n- OTOBO Installation Debian mit Docker Compose\n- Installing using Docker and Docker Compose

Wie installiere ich Docker, Docker Compose und Git auf Debian, um OTOBO vorzubereiten?

Um OTOBO mit Docker Compose auf Debian zu installieren, müssen Sie zunächst Docker, Docker Compose und Git einrichten. Beginnen Sie damit, die Paketquellen zu aktualisieren und die benötigten Pakete mit dem Befehl sudo apt update && sudo apt install -y docker.io docker-compose-v2 git zu installieren. Beachten Sie, dass auf älteren Debian-Versionen das Paket docker-compose-v2 möglicherweise nicht verfügbar ist; in diesem Fall müssen Sie das offizielle Docker-Repository hinzufügen oder das ältere docker-compose-Paket verwenden. Nach der Installation aktivieren und starten Sie den Docker-Dienst mit sudo systemctl enable --now docker, um sicherzustellen, dass er automatisch beim Systemstart läuft. Optional können Sie Ihren Benutzer der docker-Gruppe hinzufügen (sudo usermod -aG docker $USER), um Docker-Befehle ohne sudo ausführen zu können; hierfür ist eine Neuanmeldung erforderlich. Überprüfen Sie die erfolgreiche Installation abschließend mit docker --version und docker compose version.\n\nQuellen\n- OTOBO Installation Debian mit Docker Compose\n- Install Docker Engine on Debian

Welche Rolle spielt die `.env`-Datei bei der OTOBO-Installation und wie lege ich das Datenbank-Root-Passwort fest?

Die .env-Datei ist die zentrale Konfigurationsdatei für Ihre OTOBO-Docker-Compose-Installation und enthält wichtige Umgebungsvariablen für die Dienste. Sie wird nicht automatisch generiert, sondern muss aus einer der mitgelieferten Beispieldateien kopiert werden, z. B. .docker_compose_env_http für eine HTTP-Installation oder .docker_compose_env_https für HTTPS. Um das Datenbank-Root-Passwort festzulegen, öffnen Sie die erstellte .env-Datei mit einem Texteditor wie sudo nano .env. Suchen Sie die Zeile, die mit OTOBO_DB_ROOT_PASSWORD= beginnt, und ersetzen Sie den Platzhalter durch ein sicheres, komplexes Passwort Ihrer Wahl. Dieses Passwort ist von entscheidender Bedeutung, da Sie es später im OTOBO-Web-Installer benötigen, um die Datenbank und das zugehörige OTOBO-Schema anzulegen. Ein sicheres Passwort schützt Ihre Datenbank vor unbefugtem Zugriff.\n\nQuellen\n- OTOBO Installation Debian mit Docker Compose\n- Install OTOBO on Debian with Docker Compose

Wie starte ich die OTOBO-Container und schließe die Installation über den Web-Installer ab?

Nachdem Sie die .env-Datei konfiguriert und das Datenbank-Root-Passwort festgelegt haben, können Sie die OTOBO-Container starten. Navigieren Sie im Terminal in das Verzeichnis /opt/otobo-docker und führen Sie den Befehl sudo docker compose up --detach aus. Dieser Befehl startet alle definierten Dienste im Hintergrund. Beim ersten Start werden die benötigten Docker-Images von Docker Hub heruntergeladen, was je nach Internetverbindung einige Minuten dauern kann. Überprüfen Sie den Status der Container mit sudo docker compose ps, um sicherzustellen, dass alle Dienste (fünf bei HTTP, sechs bei HTTPS) laufen. Anschließend rufen Sie den OTOBO-Web-Installer in Ihrem Browser auf, indem Sie http://<ihre-server-ip>/otobo/installer.pl eingeben. Im Installer wählen Sie die Option zum Anlegen einer neuen MySQL-/MariaDB-Datenbank. Als Datenbank-Root-Passwort verwenden Sie den Wert, den Sie in der .env-Datei für OTOBO_DB_ROOT_PASSWORD festgelegt haben. Der MySQL-Hostname sollte auf db stehen bleiben, da dies der interne Servicename des Datenbank-Containers ist. Nach Abschluss des Installers können Sie sich mit dem Standardbenutzer root@localhost und dem vom Installer angezeigten Passwort anmelden.\n\nQuellen\n- OTOBO Installation Debian mit Docker Compose\n- Installing using Docker and Docker Compose

Welche Schritte sind zur Fehlerbehebung bei häufigen Problemen wie Elasticsearch-Startfehlern oder Portkonflikten zu unternehmen?

Bei der OTOBO-Installation mit Docker Compose können verschiedene Probleme auftreten, für die es spezifische Lösungsansätze gibt. Wenn Elasticsearch nicht startet oder sich der Container sofort beendet, liegt dies oft an einem zu niedrigen vm.max_map_count-Wert. Beheben Sie dies, indem Sie sudo sysctl -w vm.max_map_count=262144 ausführen und den Wert dauerhaft mit echo "vm.max_map_count=262144" | sudo tee /etc/sysctl.d/99-otobo-elasticsearch.conf setzen. Starten Sie anschließend den Docker-Stack neu. Sollten die Ports 80 oder 443 bereits belegt sein, können Sie in der .env-Datei alternative Ports über die Variablen OTOBO_WEB_HTTP_PORT bzw. OTOBO_WEB_HTTPS_PORT festlegen und den Stack neu starten. Um die Logs eines bestimmten Dienstes zur Fehlersuche einzusehen, verwenden Sie sudo docker compose logs -f <dienstname>, z. B. sudo docker compose logs -f web oder sudo docker compose logs -f elastic. Zum Neustarten oder Stoppen des gesamten Stacks dienen die Befehle sudo docker compose restart und sudo docker compose stop.\n\nQuellen\n- OTOBO Installation Debian mit Docker Compose\n- The Easy Way to Install OTOBO - Docker and Docker Compose