Überarbeitet am 8. September 2026.
ONLYOFFICE Docs ist weiterhin eine interessante Möglichkeit, Office-Dateien direkt in Nextcloud im Browser zu bearbeiten. Der Nextcloud-Connector wird aktiv gepflegt und unterstützt im September 2026 Nextcloud bis Version 34. Meine alte Anleitung funktioniert in Teilen noch, enthält aber inzwischen ein paar Dinge, die ich so nicht mehr empfehlen würde.
Vor allem würde ich den Document Server heute nicht mehr mit einem offenen Port ins Internet stellen. Stattdessen binde ich ihn nur an 127.0.0.1 und lasse den öffentlichen Zugriff ausschließlich über Nginx und HTTPS laufen.
Falls Docker und das Compose-Plugin noch fehlen, findest du die aktuelle Installation in meiner Anleitung Docker und Docker Compose unter Debian und Ubuntu installieren.
1. Verzeichnis für ONLYOFFICE anlegen
sudo mkdir -p /opt/onlyoffice/{data,logs,lib}
sudo chown -R $USER:$USER /opt/onlyoffice
cd /opt/onlyoffice
Die zusätzlichen Verzeichnisse sind nicht zwingend nötig, damit der Container überhaupt läuft. Sie machen Logs und relevante Anwendungsdaten aber leichter zugänglich und verhindern, dass alles ausschließlich im Container liegt.
2. Starkes JWT-Secret erzeugen
Seit ONLYOFFICE Docs 7.2 ist JWT standardmäßig aktiv. Wird kein eigenes Secret gesetzt, generiert ONLYOFFICE einen zufälligen Wert. Für eine feste Nextcloud-Integration ist ein eigenes Secret wesentlich praktischer, weil Nextcloud und Document Server denselben Schlüssel verwenden müssen.
Ein starkes Secret lässt sich so erzeugen:
openssl rand -hex 32
Den ausgegebenen Wert speichere ich in einer .env-Datei:
nano /opt/onlyoffice/.env
JWT_SECRET=HIER_DEIN_LANGES_ZUFAELLIGES_SECRET
Danach die Datei nur für den Eigentümer lesbar machen:
chmod 600 /opt/onlyoffice/.env
3. compose.yml erstellen
Eine Versionsangabe wie version: '2.2' ist bei aktuellem Docker Compose nicht mehr nötig. Meine compose.yml sieht so aus:
services:
documentserver:
image: onlyoffice/documentserver:latest
container_name: onlyoffice-documentserver
restart: unless-stopped
ports:
- "127.0.0.1:8833:80"
environment:
JWT_ENABLED: "true"
JWT_SECRET: "${JWT_SECRET}"
volumes:
- ./data:/var/www/onlyoffice/Data
- ./logs:/var/log/onlyoffice
- ./lib:/var/lib/onlyoffice
Der entscheidende Unterschied zu meiner alten Anleitung ist diese Zeile:
127.0.0.1:8833:80
Damit lauscht Port 8833 nur auf dem lokalen Host. Ein ufw allow 8833 ist dadurch weder nötig noch gewünscht. Von außen soll ausschließlich Nginx auf Port 443 erreichbar sein.
Hinweis zu latest: Für einen privaten Testserver ist das bequem. Auf einem produktiven System würde ich eher eine zuvor getestete ONLYOFFICE-Version fest pinnen und Updates bewusst durchführen.
4. Container starten und prüfen
cd /opt/onlyoffice
docker compose up -d
docker compose ps
Falls der Container nicht sauber startet, helfen die Logs:
docker logs -f --tail 100 onlyoffice-documentserver
Vom Host aus kann man außerdem testen, ob der Dienst antwortet:
curl -I http://127.0.0.1:8833/
5. Nginx als Reverse Proxy einrichten
ONLYOFFICE benötigt hinter einem Proxy unter anderem die korrekten X-Forwarded-Proto- und X-Forwarded-Host-Header. Auch WebSocket-Verbindungen müssen weitergereicht werden.
Die Map für WebSocket-Verbindungen gehört in den http-Kontext von Nginx, beispielsweise in eine Datei unter /etc/nginx/conf.d/:
map $http_upgrade $connection_upgrade {
default upgrade;
'' close;
}
Der eigentliche Virtual Host kann anschließend beispielsweise so aussehen. Die Zertifikatspfade musst du natürlich an deine Domain anpassen:
server {
listen 80;
server_name office.example.de;
return 301 https://$host$request_uri;
}
server {
listen 443 ssl;
server_name office.example.de;
ssl_certificate /etc/letsencrypt/live/office.example.de/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/office.example.de/privkey.pem;
client_max_body_size 100M;
location / {
proxy_pass http://127.0.0.1:8833;
proxy_http_version 1.1;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Host $host;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection $connection_upgrade;
proxy_read_timeout 3600s;
}
}
Die uralte TLS-1.0/1.1- und Cipher-Liste aus meiner früheren Anleitung habe ich bewusst entfernt. TLS-Einstellungen sollten heute zentral und passend zur verwendeten Nginx-Version gepflegt werden, statt jahrelang einen alten Cipher-Block aus einem Blogartikel mitzuschleppen.
Danach wie immer testen und neu laden:
sudo nginx -t
sudo systemctl reload nginx
6. ONLYOFFICE-App in Nextcloud installieren
In Nextcloud wird anschließend die App ONLYOFFICE aus dem App Store installiert. Der Connector unterstützt aktuell Nextcloud bis Version 34.
Unter den ONLYOFFICE-Einstellungen trägst du als Document-Server-Adresse ein:
https://office.example.de/
Im Feld für den geheimen Schlüssel kommt derselbe JWT-Wert hinein, der in der .env-Datei des Document Servers steht.
7. Wenn öffentliche Adressen intern nicht funktionieren
In manchen Docker- oder Firewall-Setups können Nextcloud und ONLYOFFICE ihre öffentlichen Domains intern nicht erreichen. Dafür bietet der Connector unter den erweiterten Servereinstellungen getrennte interne Adressen an.
Diese Felder würde ich nur verwenden, wenn sie wirklich benötigt werden. In einer normalen Installation, in der beide Seiten ihre öffentlichen HTTPS-Adressen erreichen können, ist das nicht nötig.
8. Verbindung testen
Nach dem Speichern der Einstellungen lege ich in Nextcloud eine kleine DOCX-Datei an beziehungsweise öffne eine vorhandene Datei. Wenn der Editor erscheint und Änderungen gespeichert werden, funktioniert die grundlegende Integration.
Wenn Nextcloud stattdessen einen Verbindungsfehler zeigt, prüfe ich in dieser Reihenfolge:
- Ist
docker compose psgrün? - Antwortet
curl http://127.0.0.1:8833/lokal? - Ist
https://office.example.deöffentlich erreichbar? - Ist das Zertifikat gültig?
- Stimmt das JWT-Secret auf beiden Seiten exakt überein?
- Kann ONLYOFFICE die Nextcloud-Adresse selbst erreichen?
9. Updates bewusst durchführen
cd /opt/onlyoffice
docker compose pull
docker compose up -d
Auf einem produktiven System würde ich Document Server und Nextcloud-Connector nicht blind automatisch aktualisieren. Gerade bei Office-Integrationen lohnt es sich, vor einem Versionssprung kurz die Kompatibilität zu prüfen und die Konfiguration zu sichern.
ONLYOFFICE oder Collabora?
Beide Lösungen funktionieren mit Nextcloud und haben ihre eigenen Stärken. Wenn du statt ONLYOFFICE lieber die LibreOffice-nahe Variante einsetzen möchtest, habe ich auch die Anleitung Nextcloud Office mit Collabora einrichten aktualisiert.
Weiterführend: ONLYOFFICE Docs per Docker installieren, ONLYOFFICE mit Nextcloud verbinden und ONLYOFFICE hinter einem Reverse Proxy.
Gedanken dazu 0 Kommentare
Noch ist es ruhig hier. Dein Gedanke könnte der erste sein.
Was denkst du dazu?
Dein Kommentar erscheint nach der Freigabe.