Zum Inhalt springen

OTOBO Installation RHEL mit Docker Compose

Diese Anleitung beschreibt die vollständige Installation von OTOBO auf Red Hat Enterprise Linux (RHEL) 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.

  • RHEL 8
  • RHEL 9
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“

Unter RHEL wird Docker über das offizielle Docker-CE-Repository installiert (das Paket docker aus den Standard-Repos ist veraltet bzw. nicht verfügbar). Richten Sie zunächst das Repository ein:

Terminal-Fenster
sudo dnf install -y dnf-plugins-core git
sudo dnf config-manager --add-repo https://download.docker.com/linux/rhel/docker-ce.repo

Installieren Sie anschließend Docker Engine, die CLI und das Compose-Plugin:

Terminal-Fenster
sudo dnf install -y docker-ce docker-ce-cli containerd.io docker-compose-plugin

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 vi .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. Mit firewalld:
Terminal-Fenster
sudo firewall-cmd --permanent --add-service=http
sudo firewall-cmd --permanent --add-service=https
sudo firewall-cmd --reload
  • 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

SELinux blockiert Container-Zugriffe

RHEL setzt standardmäßig SELinux ein. Falls Container Zugriffsprobleme zeigen, prüfen Sie die Audit-Logs (sudo ausearch -m avc -ts recent). Im Zweifel hilft ein passendes SELinux-Boolean oder das temporäre Umschalten in den Permissive-Modus zur Diagnose (sudo setenforce 0).

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

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.

Häufig gestellte Fragen

Welche RHEL-Versionen werden für OTOBO unterstützt?

OTOBO unterstützt RHEL 7 und neuer (z. B. RHEL 8 und 9) mit Docker und Docker Compose. Unter RHEL wird Docker über das offizielle Docker-CE-Repository installiert (das Paket `docker` aus den Standard-Repos ist veraltet bzw. nicht verfügbar). Richten Sie zunächst das Repository ein: Installieren Sie…

Brauche ich EPEL, um Docker unter RHEL zu installieren?

Ja. Aktivieren Sie das EPEL-Repository und installieren Sie Docker, Docker Compose sowie Git mit yum, bevor Sie otobo-docker klonen.

Ist die RHEL-Installation vergleichbar mit CentOS?

Ja. Beide nutzen yum/EPEL für Docker-Pakete und denselben offiziellen Docker-Compose-Stack für OTOBO.

Was sollte ich über Systemvoraussetzungen wissen?

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

Was sollte ich über Schritt 3: `.env`-Datei erstellen wissen?

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)…