Überarbeitet am 8. September 2026.

Meine alte Anleitung für die Nextcloud-Volltextsuche war inzwischen ein ziemliches Museum: Java 8, Elasticsearch 7.12, ReadonlyREST, ein separat installiertes ingest-attachment-Plugin und Hinweise auf PHP 7.4. Die gute Nachricht ist: Full Text Search gibt es weiterhin und wird aktiv gepflegt. Der Aufbau ist aber heute deutlich klarer.

Das Wichtigste zuerst: Nextcloud Full Text Search besteht nicht aus nur einer App. Es ist ein kleines Baukastensystem aus einer Kern-App, einem Inhalts-Provider und einer Suchplattform.

Wenn du erstmal wissen möchtest, was Nextcloud sonst noch kann, findest du hier meinen aktuellen Überblick: Was bietet Nextcloud 2026?.

Die drei Bausteine der Volltextsuche

Für die Suche in Dateien brauchst du normalerweise diese Komponenten:

  • Full text search – die Kern-App und das Such-Framework
  • Full text search - Files – liest Inhalte und Metadaten aus Dateien
  • eine Platform-App – dort wird der Suchindex gespeichert

Als Plattform gibt es unter anderem Full text search - Elasticsearch Platform. Inzwischen existiert außerdem eine SQL Platform, die den Index in der Nextcloud-Datenbank speichert und ohne separaten Elasticsearch-Server auskommt.

Welche Plattform würde ich nehmen?

Für eine kleine Installation würde ich mir zuerst die SQL Platform ansehen. Sie spart einen zusätzlichen Dienst und damit auch RAM, Updates und Wartung.

Bei vielen Dateien, mehreren Benutzern oder einer größeren Installation bleibt Elasticsearch interessant. Dafür läuft ein zusätzlicher Suchserver, der speziell für solche Indizes gebaut ist.

Wichtig: Die aktuelle Nextcloud-App Full text search - Elasticsearch Platform ist seit Version 26 nur noch mit Elasticsearch 8 kompatibel. Meine alten Elasticsearch-7-Beispiele gehören deshalb nicht mehr in eine heutige Anleitung.

1. Die Nextcloud-Apps installieren

Im Nextcloud App Store installierst du für die Elasticsearch-Variante:

  • Full text search
  • Full text search - Files
  • Full text search - Elasticsearch Platform

Alternativ kannst du als Plattform Full text search - SQL Platform verwenden.

Wer lieber mit OCC arbeitet, kann die App-IDs auch darüber aktivieren. Die eigentliche Konfiguration erledige ich anschließend aber gern in der Administrationsoberfläche, weil dort sofort sichtbar ist, welcher Provider und welche Plattform ausgewählt sind.

2. Elasticsearch nur intern erreichbar machen

Wenn du Elasticsearch nutzt, braucht Nextcloud Zugriff auf dessen HTTP-Schnittstelle. Port 9200 sollte aber nicht einfach offen im Internet hängen.

Auf einem einzelnen Docker-Host binde ich solche Dienste lieber nur an localhost oder lasse Nextcloud und Elasticsearch direkt über ein internes Docker-Netz miteinander sprechen.

127.0.0.1:9200:9200

Damit ist Elasticsearch vom Host erreichbar, aber nicht automatisch aus dem Internet. Wie Docker und Docker Compose aktuell installiert werden, habe ich hier beschrieben: Docker und Docker Compose installieren.

Ich pinne in dieser Anleitung bewusst keine konkrete Elasticsearch-Patchversion fest. Vor der Installation würde ich immer die Kompatibilitätsangabe der aktuellen Nextcloud-Elasticsearch-App prüfen. Alte Blogposts mit Elasticsearch 6 oder 7 sollte man nicht einfach nachbauen.

3. Full Text Search in Nextcloud konfigurieren

Unter den Administrationseinstellungen der Volltextsuche wählst du den Datei-Provider und deine Suchplattform aus.

Bei einem lokal auf dem Host laufenden Elasticsearch könnte die Adresse beispielsweise so aussehen:

http://127.0.0.1:9200

Laufen Nextcloud und Elasticsearch beide in Docker, ist stattdessen meist der interne Servicename sinnvoll, zum Beispiel:

http://elasticsearch:9200

Zusätzlich wird ein Indexname festgelegt, zum Beispiel nextcloud. Zugangsdaten oder TLS hängen davon ab, wie du deinen Elasticsearch-Server abgesichert hast.

4. Erst testen, dann indexieren

Einer der praktischsten Befehle ist inzwischen der eingebaute Test:

sudo -E -u www-data php /var/www/nextcloud/occ fulltextsearch:test

Der Test prüft unter anderem, ob Provider und Suchplattform geladen werden können, ob sich Dokumente indexieren lassen und ob Suchanfragen Ergebnisse zurückgeben.

Erst wenn dieser Test sauber durchläuft, starte ich den eigentlichen Index:

sudo -E -u www-data php /var/www/nextcloud/occ fulltextsearch:index

Bei vielen Dateien kann der erste Lauf ziemlich lange dauern. Dann gehört der Prozess in eine stabile SSH-Sitzung wie tmux oder screen – nicht in ein Terminal, das man versehentlich nach zehn Minuten schließt.

5. Konfiguration kontrollieren

Für eine schnelle Übersicht gibt es:

sudo -E -u www-data php /var/www/nextcloud/occ fulltextsearch:check

Damit sieht man, welche Plattform ausgewählt ist und welche Provider aktiv sind. Bei Fehlern ist das oft hilfreicher als direkt den ganzen Index zu löschen und neu aufzubauen.

6. Laufende Indexierung

Für fortlaufende Indexierung gibt es außerdem:

sudo -E -u www-data php /var/www/nextcloud/occ fulltextsearch:live

Das ist ein dauerhaft laufender Prozess und gehört deshalb nicht einfach in eine normale SSH-Sitzung. Je nach Installation kann man ihn beispielsweise über systemd oder einen Prozessmanager betreiben. Wer nur gelegentlich indexiert, kann auch bewusst mit normalen Indexläufen arbeiten.

Was ist mit OCR?

Hier war meine alte Anleitung zu pauschal. Volltextsuche und OCR sind nicht dasselbe. Die Full-Text-Search-Apps können Inhalte unterstützter Dateien indexieren, aber aus jedem beliebigen Foto oder Scan wird nicht automatisch zuverlässig durchsuchbarer Text.

Wenn dein Hauptziel gescannte Dokumente sind, würde ich zuerst prüfen, ob die Dateien bereits eine OCR-Textebene besitzen – beispielsweise weil sie aus Paperless-ngx oder einer Scanner-Software kommen. Dann kann die Volltextsuche diesen Text wesentlich einfacher indexieren.

Und Nextant mit Solr?

Nextant war der Vorgänger, über den ich hier früher viel geschrieben habe. Die App ist aber nur bis Nextcloud 13 freigegeben und seit Jahren nicht mehr gepflegt. Meine alten Solr-/Nextant-Installationsanleitungen sind deshalb keine sinnvolle Empfehlung mehr.

Für eine aktuelle Nextcloud würde ich heute beim aktiv gepflegten Full-Text-Search-Framework bleiben und eine aktuelle Platform-App auswählen.

Auch Caching und Serverleistung im Blick behalten

Volltextindexierung erzeugt ordentlich Last auf CPU, RAM und Datenträger. Wenn die Nextcloud ohnehin schon langsam ist, sollte man nicht nur am Suchdienst drehen. Für das normale Nextcloud-Caching habe ich deshalb auch Redis und APCu für Nextcloud aktualisiert.

Weiterführend: Full text search, Full text search - Files, Elasticsearch Platform und SQL Platform.