Diese Seite beschreibt die Installationsschritte von Fess mit Docker und Docker Compose. Mit Docker können Sie schnell und einfach eine Fess-Umgebung einrichten.
Voraussetzungen
Die in Systemanforderungen beschriebenen Systemanforderungen sind erfüllt
Docker 20.10 oder höher ist installiert
Docker Compose 2.0 oder höher ist installiert
Überprüfung der Docker-Installation
Überprüfen Sie die Version von Docker und Docker Compose mit folgenden Befehlen.
Bemerkung
Bei Verwendung einer älteren Version von Docker Compose verwenden Sie den Befehl docker-compose. Diese Dokumentation verwendet das neue docker compose-Befehlsformat.
Über Docker-Images
Das Docker-Image von Fess besteht aus folgenden Komponenten:
Fess: Volltext-Suchsystem
OpenSearch: Suchmaschine
Das offizielle Docker-Image wird auf GitHub Container Registry veröffentlicht.
Schritt 1: Herunterladen der Docker Compose-Dateien
Für den Start mit Docker Compose werden folgende Dateien benötigt.
Methode 1: Einzeln Dateien herunterladen
Laden Sie folgende Dateien herunter:
Methode 2: Repository mit Git klonen
Wenn Git installiert ist, können Sie auch das gesamte Repository klonen:
Schritt 2: Überprüfung der Docker Compose-Dateien
Inhalt von compose.yaml
compose.yaml enthält die grundlegende Konfiguration von Fess.
Hauptkonfigurationspunkte:
Portnummer: Port der Fess-Weboberfläche (Standard: 8080)
Umgebungsvariablen: Einstellungen wie Java-Heap-Größe
Volumes: Einstellungen für Datenpersistenz
Inhalt von compose-opensearch3.yaml
compose-opensearch3.yaml enthält die OpenSearch-Konfiguration.
Hauptkonfigurationspunkte:
OpenSearch-Version: Verwendete OpenSearch-Version
Speichereinstellungen: JVM-Heap-Größe
Volumes: Einstellungen für Indexdaten-Persistenz
Anpassung der Konfiguration (Optional)
Wenn Sie die Standardkonfiguration ändern möchten, bearbeiten Sie compose.yaml.
Beispiel: Änderung der Portnummer:
Beispiel: Änderung der Speichereinstellungen:
Schritt 3: Starten der Docker-Container
Grundlegender Start
Starten Sie Fess und OpenSearch mit folgendem Befehl:
Bemerkung
Mit der Option
-fwerden mehrere Compose-Dateien angegebenMit der Option
-dwird im Hintergrund ausgeführt
Überprüfung der Startprotokolle:
Drücken Sie Ctrl+C, um die Protokollanzeige zu beenden.
Überprüfung des Starts
Überprüfen Sie den Status der Container:
Vergewissern Sie sich, dass folgende Container laufen:
fessopensearch
Tipp
Der Start kann einige Minuten dauern. Warten Sie, bis im Protokoll „Fess is ready“ oder eine ähnliche Meldung erscheint.
Schritt 4: Zugriff über den Browser
Nach Abschluss des Starts greifen Sie auf folgende URL zu:
Suchseite: http://localhost:8080/
Verwaltungsseite: http://localhost:8080/admin
Standard-Administratorkonto:
Benutzername:
adminPasswort:
admin
Warnung
Wichtiger Sicherheitshinweis
In Produktionsumgebungen ändern Sie bitte unbedingt das Administratorpasswort. Weitere Informationen finden Sie unter Sicherheitseinstellungen.
AI-Modus aktivieren (LLM-Plugins)
Ab Fess 15.7 wird der AI-Modus (RAG Chat) über die fess-llm-*-Plugin-Familie bereitgestellt. Das offizielle docker-fess Repository liefert Overlay-Dateien für die wichtigsten LLM-Anbieter mit.
| Overlay | Verwendung |
|---|---|
compose-ollama.yaml | Ollama (lokales LLM, startet zusätzlichen ollama01-Service) |
compose-ollama-gpu.yaml | Ollama mit NVIDIA-GPU |
compose-gemini.yaml | Google Gemini (Cloud-API) |
compose-openai.yaml | OpenAI (Cloud-API) |
Jedes Overlay installiert das passende Plugin via FESS_PLUGINS und setzt -Dfess.config.rag.chat.enabled=true zusammen mit -Dfess.system.rag.llm.name={provider} in FESS_JAVA_OPTS.
Gemini verwenden:
OpenAI verwenden:
Ollama verwenden:
Tipp
Nach dem Start kann unter Administration > System > Allgemein in der RAG-Sektion rag.llm.name und anbieterspezifische Einstellungen bearbeitet werden. Diese Werte werden in OpenSearch persistiert und überschreiben bei späteren Neustarts die JVM-Optionen.
Datenpersistenz
Volumes werden automatisch erstellt, um Daten auch nach dem Löschen der Docker-Container zu erhalten.
Überprüfung der Volumes:
Fess-bezogene Volumes:
fess-es-data: OpenSearch-Indexdatenfess-data: Fess-Konfigurationsdaten
Wichtig
Volumes werden beim Löschen der Container nicht gelöscht. Um Volumes zu löschen, muss explizit der Befehl docker volume rm ausgeführt werden.
Stoppen der Docker-Container
Container stoppen:
Container stoppen und löschen:
Warnung
Der Befehl down löscht Container, aber keine Volumes. Um auch Volumes zu löschen, fügen Sie die Option -v hinzu:
Achtung: Dieser Befehl löscht alle Daten.
Erweiterte Konfiguration
Anpassung der Umgebungsvariablen
Durch Hinzufügen oder Ändern von Umgebungsvariablen in compose.yaml sind detaillierte Konfigurationen möglich.
Hauptumgebungsvariablen:
| Umgebungsvariable | Beschreibung |
|---|---|
FESS_HEAP_SIZE | Fess JVM-Heap-Größe (Standard: 1g) |
SEARCH_ENGINE_HTTP_URL | OpenSearch HTTP-Endpunkt |
TZ | Zeitzone (z.B.: Asia/Tokyo) |
Beispiel:
Anwendung von Konfigurationsdateien
Detaillierte Fess-Einstellungen werden in der Datei fess_config.properties geschrieben. In Docker-Umgebungen gibt es folgende Methoden, um diese Dateieinstellungen anzuwenden.
Methode 1: Konfigurationsdatei mounten
Durch das Mounten eines Verzeichnisses, das fess_config.properties und andere Konfigurationsdateien enthält, können Sie auf der Host-Seite bearbeitete Einstellungen auf den Container anwenden.
Erstellen Sie ein Konfigurationsverzeichnis auf dem Host:
Holen Sie die Konfigurationsdatei-Vorlage (nur beim ersten Mal):
Bearbeiten Sie
/path/to/fess-config/fess_config.propertiesund fügen Sie erforderliche Einstellungen hinzu:Fügen Sie Volume-Mount zu
compose.yamlhinzu:Starten Sie den Container:
Bemerkung
fess_config.properties enthält Sucheinstellungen, Crawler-Einstellungen, E-Mail-Einstellungen und andere Systemkonfigurationen. Auch wenn Sie Container mit docker compose down löschen, bleiben Dateien auf der Host-Seite erhalten.
Methode 2: Konfiguration über Systemeigenschaften
Sie können Konfigurationselemente in fess_config.properties über Umgebungsvariablen mit Systemeigenschaften überschreiben.
Konfigurationselemente, die in fess_config.properties geschrieben sind (z.B. crawler.document.cache.enabled=false), können im Format -Dfess.config.einstellungsname=wert angegeben werden.
Fügen Sie FESS_JAVA_OPTS zu Umgebungsvariablen in compose.yaml hinzu:
Bemerkung
Der Teil nach -Dfess.config. entspricht dem Konfigurationselementnamen in fess_config.properties.
Verbindung zu externem OpenSearch
Bei Verwendung eines bestehenden OpenSearch-Clusters bearbeiten Sie compose.yaml und ändern Sie das Verbindungsziel.
Verwenden Sie
compose-opensearch3.yamlnicht:Setzen Sie
SEARCH_ENGINE_HTTP_URL:
Konfiguration des Docker-Netzwerks
Bei Integration mit mehreren Diensten können Sie ein benutzerdefiniertes Netzwerk verwenden.
Beispiel:
Produktionsbetrieb mit Docker Compose
Empfohlene Einstellungen bei Verwendung von Docker Compose in Produktionsumgebungen:
Ressourcenbeschränkungen:
Neustartrichtlinie:
Protokollkonfiguration:
Aktivierung der Sicherheitseinstellungen
Aktivieren Sie das Sicherheits-Plugin von OpenSearch und konfigurieren Sie entsprechende Authentifizierung. Weitere Informationen finden Sie unter Sicherheitseinstellungen.
Fehlerbehebung
Container startet nicht
Überprüfen Sie die Protokolle:
Überprüfen Sie Portnummer-Konflikte:
Überprüfen Sie die Festplattenkapazität:
Speicher-Fehler
Wenn OpenSearch aufgrund von Speichermangel nicht startet, muss vm.max_map_count erhöht werden.
Unter Linux:
Für dauerhafte Einstellung:
Dateninitialisierung
Alle Daten löschen und in den Ausgangszustand zurücksetzen:
Warnung
Dieser Befehl löscht alle Daten vollständig.
Nächste Schritte
Nach Abschluss der Installation lesen Sie bitte folgende Dokumentation:
Start, Stopp, Erstkonfiguration - Start und Ersteinrichtung von Fess
Sicherheitseinstellungen - Sicherheitseinstellungen für Produktionsumgebungen
Fehlerbehebung - Fehlerbehebung
Häufig gestellte Fragen
F: Wie groß sind die Docker-Images?
A: Das Fess-Image ist ca. 1 GB, das OpenSearch-Image ca. 800 MB. Beim ersten Start kann der Download einige Zeit dauern.
F: Ist Betrieb auf Kubernetes möglich?
A: Ja, möglich. Durch Konvertierung der Docker Compose-Dateien in Kubernetes-Manifeste oder durch Verwendung von Helm Charts ist Betrieb auf Kubernetes möglich. Weitere Informationen finden Sie in der offiziellen Fess-Dokumentation.
F: Wie aktualisiert man Container?
A: Aktualisieren Sie mit folgenden Schritten:
Besorgen Sie die neuesten Compose-Dateien
Stoppen Sie die Container:
Holen Sie neue Images:
Starten Sie die Container:
F: Ist Multi-Node-Konfiguration möglich?
A: Ja, möglich. Durch Bearbeiten von compose-opensearch3.yaml und Definition mehrerer OpenSearch-Knoten kann eine Cluster-Konfiguration erstellt werden. Für Produktionsumgebungen wird jedoch die Verwendung von Orchestrierungs-Tools wie Kubernetes empfohlen.