DokuWiki 2026 selbst hosten: Dateispeicher, ACLs und Backups
Eine praxisnahe Anleitung zum Self-Hosting von DokuWiki mit Docker, Ports, persistenten Daten, TLS, Sicherheit, Backups und den Fehlern, die den Produktionseinsatz verhindern. Mit Prüfungen.
Betrachte DokuWiki als kleines System und nicht als Docker-Image. Das nutzerseitige Ziel für DokuWiki ist klar: ein dateibasierendes Wiki, das keine Datenbank benötigt; die Bereitstellung ist erst dann akzeptabel, wenn du die Setup-Zugangsdaten ersetzen, eine Seite bearbeiten, Medien hochladen, eine ACL anwenden, eine Revision anzeigen und eine ältere Version wiederherstellen kannst.
Diese Unterscheidung macht den Fehler sichtbar, auf den Betreiber nach lokalen Tests stoßen: Dateibesitz verhindert das Speichern von Seiten, obwohl die UI geladen wird. Außerdem wird der Backup- und Upgrade-Plan dadurch konkret genug, um ihn zu testen.
Ports, Prozesse und private Services
Beginne mit dem DokuWiki-Netzwerk-Namespace: Der Web-Listener verwendet Port 80 und nicht einen Host-Port, der aus einem Laptop-Tutorial übernommen wurde. Die lokale Laufzeitanforderung ist ein persistentes Config-Volume mit Seiten, Medien und ACLs. Dokumentiere die erwartete Kapazität, den Besitz und das Fehlerverhalten, anstatt diese Angaben als Image-Default zu belassen.
Nachdem die Anforderung erfüllt ist, führe das vollständige Szenario aus – Setup-Zugangsdaten ersetzen, eine Seite bearbeiten, Medien hochladen, eine ACL anwenden, eine Revision anzeigen und eine ältere Version wiederherstellen. Erfasse Logs und Messwerte für Dateisystem-Metadaten, Medien-Volume, Suchindexierung und PHP-Worker. Diese Nachweise bilden die erste bekannte funktionierende Architektur und machen spätere Wechsel zwischen Dockup-Compute und einem angeschlossenen Server testbar.
Fehlertests für DokuWiki
Ein grüner Container ist notwendig, reicht aber nicht aus. Der Service-Level-Indikator ist der erfolgreiche Abschluss von „Setup-Zugangsdaten ersetzen, eine Seite bearbeiten, Medien hochladen, eine ACL anwenden, eine Revision anzeigen und eine ältere Version wiederherstellen“. Wahrscheinliche Belastungssignale sind dabei Dateisystem-Metadaten, Medien-Volume, Suchindexierung und PHP-Worker.
Änderungskontrolle ist wichtig, weil Plugins und Templates bei DokuWiki-Releases hinterherhinken können, obwohl einfache Seitendateien lesbar bleiben. Bewahre das alte Image auf, teste Migrationen mit kopierten Daten und dokumentiere, ob ein Rollback nach einer Änderung des Schemas unterstützt wird. Wenn der Dateibesitz das Speichern von Seiten verhindert, obwohl die UI geladen wird, diagnostiziere die erste Abweichung von der funktionierenden Umgebung.
Eine bekannte funktionierende DokuWiki-Bereitstellung dokumentieren
Ein Release Candidate für DokuWiki verdient produktiven Traffic, indem er ein festgelegtes Szenario abschließt: Setup-Zugangsdaten ersetzen, eine Seite bearbeiten, Medien hochladen, eine ACL anwenden, eine Revision anzeigen und eine ältere Version wiederherstellen. Erfasse den Image-Digest, die effektive Konfiguration ohne Secrets, die öffentliche Origin und die Zeitstempel für dieses Szenario. Die Testdaten sollten verwerfbar sein, aber realistisch genug, um denselben Pfad wie bei echten Nutzern auszuführen.
Führe den Test nach dem Austausch der Laufzeit aus und erstelle den Service anschließend aus Seiten, Medien, Metadaten, Benutzern, ACLs und Plugins neu. Die Wiederherstellung ist erfolgreich, wenn Seiten, Revisionen, Medien, Benutzer, ACLs und Plugins zurückkehren und die geschützte Seite weiterhin geschützt ist. Vergleiche die Messwerte für Dateisystem-Metadaten, Medien-Volume, Suchindexierung und PHP-Worker mit dem vorherigen Release und untersuche relevante Abweichungen vor dem Rollout.
Führe abschließend diesen kontrollierten Fehler herbei: Übermittle harmlose Eingaben nahe dem für diese Grenze geltenden Ressourcen- oder Formatlimit: Der Dateibesitz verhindert das Speichern von Seiten, obwohl die UI geladen wird. Prüfe, dass DokuWiki den Fehler erklärt, den bestehenden Zustand nicht beschädigt und nach Wiederherstellung der gültigen Bedingung wieder funktioniert. Speichere einen bereinigten Log-Auszug und die Wiederherstellungszeit. Zusammen decken diese Prüfungen Verhalten, Dauerhaftigkeit und Betriebsfähigkeit ab – nicht nur die Prozessverfügbarkeit.
Die erste produktionsnahe Instanz ausführen
Verwende einen Befehl, der alle wichtigen Entscheidungen sichtbar macht. Diese Basiskonfiguration bindet DokuWiki an das Loopback-Interface des Hosts, fügt die bekannten Daten-Mounts hinzu und stellt die erste erforderliche Einstellung bereit. Bestätige vor der Freigabe die lokale Anforderung: ein persistentes Config-Volume mit Seiten, Medien und ACLs.
docker run -d \
--name dokuwiki \
--restart unless-stopped \
-p 127.0.0.1:80:80 \
-v dokuwiki-data:/config \
lscr.io/linuxserver/dokuwiki:latest
Ersetze bewegliche Tags durch eine getestete Version oder einen Digest. Prüfe nach dem Start docker logs --tail 200 dokuwiki und bestätige, dass der Prozess auf 80 lauscht. Führe anschließend die DokuWiki-Abnahmeaktion aus. Eine Antwort von der Root-Seite beweist nicht, dass das vollständige Szenario erfolgreich ist: Setup-Zugangsdaten ersetzen, eine Seite bearbeiten, Medien hochladen, eine ACL anwenden, eine Revision anzeigen und eine ältere Version wiederherstellen.
Volumes sind nur die erste Wiederherstellungsebene
Bei DokuWiki beginnt die Sicherheit gegen fehlgeschlagene Redeployments mit Seiten, Medien, Metadaten, Benutzern, ACLs und Plugins. Mount /config vor dem Bootstrap, schreibe harmlose Beispieldaten und ersetze den Container, um zu beweisen, dass dieser Pfad tatsächlich persistent ist. Teste den Pfad, indem du den Container ersetzt, während harmlose Beispieldaten vorhanden sind. So werden Mounts sichtbar, die ein Verzeichnis zu hoch oder zu niedrig angesetzt sind.
Teste anschließend die Disaster Recovery auf einem leeren Host. Verwende, falls erforderlich, einen anwendungskonsistenten Datenbankexport und prüfe, dass Seiten, Revisionen, Medien, Benutzer, ACLs und Plugins zurückkehren und die geschützte Seite weiterhin geschützt ist. Die Anleitung zu getesteten Datenbank-Backups bietet ein besseres Ziel, als lediglich zu prüfen, ob eine Archivdatei erstellt wurde.
DokuWiki eine kanonische Adresse geben
Die TLS-Ausstellung ist nur die Hälfte der DokuWiki-Route. Stelle das Wiki über HTTPS bereit und setze seine kanonische Basis-URL. Leite den Traffic intern an Port 80 weiter und übermittle das externe Schema, damit generierte URLs und sichere Cookies konsistent bleiben.
Verwende das vollständige DokuWiki-Szenario aus einem sauberen Netzwerk und nicht nur die Root-Seite. Ein 502- oder Zertifikatsfehler lässt sich mit automatischer Domain- und TLS-Einrichtung isolieren. Wenn der Traffic den Prozess erreicht und der Dateibesitz das Speichern von Seiten verhindert, obwohl die UI geladen wird, diagnostiziere diese Bedingung an ihrem tatsächlichen Entstehungsort, statt weitere Redirects hinzuzufügen.
Temporären Setup-Zugriff schließen
Modelliere die Bedrohung anhand der Aktion, die DokuWiki ausführt, und nicht nur anhand des Login-Formulars. Der schwerwiegendste Fehler besteht hier darin, den Installer oder die Registrierung offen zu lassen. Setze diese Grenze um: Entferne den Installer-Zugriff, überprüfe die Registrierung und bewahre ACL-Dateien zusammen mit den Seiteninhalten auf.
DokuWiki benötigt in dieser Basiskonfiguration kein obligatorisches Bootstrap-Secret. Schütze stattdessen das eigentliche Administratorkonto oder die vorgeschaltete Authentifizierung. Behebe einen Berechtigungsfehler nicht dadurch, dass du den Container als root ausführst oder den Host großflächig mountest. Ressourcenlimits gehören ebenfalls zum Sicherheitskonzept, wenn Benutzer Dateisystem-Metadaten, Medien-Volume, Suchindexierung und PHP-Worker auslösen können.
Dockup für die Plattformebene verwenden
Ein Dockup-Template sollte Image, Port 80, Mounts, Health-Timing, Domain, TLS und Secret-Bereitstellung festlegen. Dockup sollte die DokuWiki-Laufzeiteinstellungen beibehalten, während der Betreiber diese lokale Anforderung bestätigt: ein persistentes Config-Volume mit Seiten, Medien und ACLs. Dieselbe Bereitstellung kann auf Dockup-Server und an Kundensysteme angeschlossene Kapazität ausgerichtet werden.
Nachdem die Route aktiv ist, wende die öffentliche Einstellung an und versuche, Setup-Zugangsdaten zu ersetzen, eine Seite zu bearbeiten, Medien hochzuladen, eine ACL anzuwenden, eine Revision anzuzeigen und eine ältere Version wiederherzustellen. Sichere Seiten, Medien, Metadaten, Benutzer, ACLs und Plugins und behalte den Wiederherstellungstest im Betriebsplan. Diese Aufgaben gehören zu DokuWiki und bleiben auch nach der Infrastruktur-Bereitstellung sichtbar.
Häufig gestellte Fragen
Was benötigt DokuWiki für eine produktive Bereitstellung?
Leite den DokuWiki-Container über eine HTTPS-Origin an Port 80 weiter. Die lokale Laufzeitanforderung ist ein persistentes Config-Volume mit Seiten, Medien und ACLs. Betrachte DokuWiki erst dann als bereit, wenn du Setup-Zugangsdaten ersetzen, eine Seite bearbeiten, Medien hochladen, eine ACL anwenden, eine Revision anzeigen und eine ältere Version wiederherstellen kannst.
Welche DokuWiki-Daten gehören in ein Backup?
Mache /config persistent und nimm Seiten, Medien, Metadaten, Benutzer, ACLs und Plugins in dasselbe Wiederherstellungsmanifest auf. Eine saubere DokuWiki-Wiederherstellung ist erst dann erfolgreich, wenn Seiten, Revisionen, Medien, Benutzer, ACLs und Plugins zurückkehren und die geschützte Seite weiterhin geschützt ist.
Benötigt DokuWiki hinter einem Reverse Proxy HTTPS?
Verwende HTTPS für die öffentliche DokuWiki-Origin und behalte Port 80 in der internen Route bei. Setze die DokuWiki-Einstellung korrekt: Stelle das Wiki über HTTPS bereit und setze seine kanonische Basis-URL. Bei DokuWiki schützt HTTPS Zugangsdaten oder Benutzerinhalte während der Übertragung und sorgt für konsistentes clientseitiges Verhalten, das von der Origin abhängt.
Wie sollte ein DokuWiki-Upgrade getestet werden?
Stelle den aktuellen DokuWiki-Zustand in einer isolierten Bereitstellung wieder her, wende die Kandidatenversion an und wiederhole die Abnahmetransaktion. Achte besonders darauf, dass Plugins und Templates bei DokuWiki-Releases hinterherhinken können, obwohl einfache Seitendateien lesbar bleiben. Bewahre das vorherige DokuWiki-Image auf, bis die Grenzen von Datenmigration und Rollback verstanden sind.
