Your own private cloud where the team can store files and edit Word, Excel and PowerPoint documents together in the browser - no per-user licence, your data on your server.
Google Drive style file storage with Office style editing, on a server you control - that is what Nextcloud plus OnlyOffice gives you. This guide covers the complete path: install both servers, connect them correctly, and prove the setup with a real first edit. Watch the video above for the full on-screen process, and use this page as your checklist.
Nextcloud stores your files and handles users, sharing and sync - but on its own it can only preview documents, not truly edit them in the browser. OnlyOffice Docs is the editing engine. It is a separate server program that loads inside the Nextcloud page and does the actual Word, Excel and PowerPoint style editing.
So this project always has three parts: install Nextcloud, install OnlyOffice Docs, then connect them with the official connector app and a shared secret key. Skip the connection details and everything looks installed - yet no document opens. That pairing step is where most setups fail, and it is the heart of this guide.
Decide these three things first, because changing them later means redoing the integration.
cloud.example.com for Nextcloud and office.example.com for OnlyOffice. One shared server with a reverse proxy in front is fine.Install Nextcloud on your Linux server with a web server (Apache or Nginx), PHP and a real database - MariaDB or PostgreSQL for anything beyond a tiny test. Create the admin account, finish the web installer, and confirm you can log in, upload a file and see it in the Files app.
Two habits from day one: turn on the server-side checks under Settings, Administration, Overview and clear every warning you can, and note your Nextcloud address exactly as users will open it - the connector later needs this address to match.
The official and simplest route is the Docker image. A typical start command looks like this (the secret value is explained in the next step - use your own long random value, never this example):
sudo docker run -i -t -d -p 8080:80 -e JWT_ENABLED=true -e JWT_SECRET=YourLongSecretValue --restart=always onlyoffice/documentserverhttp://your-server:8080/healthcheck - it must answer true. Nothing else matters until this says true.https://office.example.com/, and test the healthcheck again on that address.Do not leave the built-in example page enabled on a public server later - it is a test tool, not part of your office system.
This is the step the whole setup stands on. The connector app lives inside Nextcloud; the secret proves to both servers that they are talking to their real partner.
https://office.example.com/.If saving fails, do not reinstall anything - it is almost always the secret, the address, or one server being unable to reach the other. The read-only and error fix guide linked below covers those three causes in order.
Upload a small test document, then open it. It should load inside the OnlyOffice editor. Type a line, wait a few seconds, close the tab, and open the file again - your line must be there. Also download the file once and confirm the change is inside the real file, not just on screen.
Then test like a real user: share the file with a second account, open it from both accounts at the same time, and watch the co-editing cursors appear. Only when saving, sharing and joint editing all pass is the integration actually done.
The video shows the complete installation and integration on screen - both servers, the connector settings and the first document edit.
Watch Full VideoYes, for a home or small office team one Linux server can run both, ideally with the two services on separate subdomains behind a reverse proxy. Give the machine enough RAM - OnlyOffice Docs alone wants at least 4 GB - and move the Docs server to its own machine when editing load grows.
The OnlyOffice Docs Community Edition is free and open source and covers normal document, spreadsheet and presentation editing with co-editing. Paid editions exist for large deployments that need official support and scaling features. For a small team the free edition is the usual starting point.
Almost always one of three causes: the secret key in the Nextcloud connector does not exactly match the secret on the Docs server, the Docs server cannot reach Nextcloud to download the file and send changes back, or the editor is loaded over plain HTTP inside an HTTPS page and the browser blocks it. Check them in that order.