Docmost - kollaborative Dokumentation wie Notion selbst hosten
Docmost - kollaborative Dokumentation wie Notion selbst hosten
Docmost ist ein selbstgehostetes Kollaborations-Wiki, das kollaboratives Echtzeit-Schreiben in einer Notion-ähnlichen Oberfläche ermöglicht.
Was ist Docmost?
Docmost ist ein modernes Open-Source-Wiki, das auf kollaboratives Schreiben ausgelegt ist – mehrere Nutzer können gleichzeitig an einem Dokument arbeiten, ähnlich wie in Notion oder Confluence. Die Inhalte werden in einem Rich-Text-Editor mit Block-basiertem Aufbau erstellt und können in Spaces (Bereiche) und Seiten strukturiert werden. Docmost unterstützt Kommentare, Seitenhistorie und Berechtigungen auf Workspace-Ebene. Als selbstgehostete Alternative zu Notion ist Docmost besonders für Teams interessant, die ihre Dokumentation privat halten möchten.
Voraussetzungen
- Docker 20.10+ oder Docker Compose
- PostgreSQL 14+ als Datenbank
- Redis für Echtzeit-Synchronisation
Compose-Beispiel
services:
docmost:
image: docmost/docmost:latest
container_name: docmost
restart: unless-stopped
ports:
- "3000:3000"
depends_on:
- db
- redis
volumes:
- ./storage:/app/data/storage
environment:
- APP_URL=https://wiki.example.com
- APP_SECRET=langer_zufaelliger_string
- DATABASE_URL=postgresql://docmost:passwort@db:5432/docmost
- REDIS_URL=redis://redis:6379
db:
image: postgres:16
container_name: docmost-db
restart: unless-stopped
volumes:
- ./postgres:/var/lib/postgresql/data
environment:
- POSTGRES_USER=docmost
- POSTGRES_PASSWORD=passwort
- POSTGRES_DB=docmost
redis:
image: redis:7
container_name: docmost-redis
restart: unless-stopped
volumes:
- ./redis:/data
Hinweise
APP_SECRETmuss ein langer, zufälliger String sein – er sichert alle Sitzungstoken.- Redis ist für die Echtzeit-Kollaboration zwingend erforderlich; ohne Redis funktioniert das gleichzeitige Bearbeiten nicht.
- Dateianhänge werden im
./storage-Verzeichnis gespeichert – unbedingt in Backups einbeziehen. APP_URLmuss auf die öffentlich erreichbare Domain gesetzt werden, da sie für Einladungslinks genutzt wird.