Skip to content
selfhub.
Docmost logo

Self-hosting guide

Docmost

Collaborative wiki and documentation platform with real-time editing, spaces, permissions, comments, and page history.

How to Self-Host Docmost

Docmost is a collaborative wiki and documentation platform with real-time editing, spaces, permissions, comments, and page history. The notes below were checked against the project site and source repository.

When Docmost is a good fit

Choose Docmost when a team wants a shared wiki with live editing on a host you administer. The core server is AGPL-licensed. Some features are shipped under a separate enterprise license, so check the current edition notes before you depend on them. You own the database, uploaded files, upgrades, and recovery.

Deployment notes

Docker is the documented install. The published compose file runs docmost/docmost with PostgreSQL and Redis. Before the first start, set APP_URL to the HTTPS address people will use, replace APP_SECRET with a long random value (the docs require at least 32 characters; openssl rand -hex 32 is the example they give), and replace the default database password in both POSTGRES_PASSWORD and DATABASE_URL. The app refuses to start if the sample secret is left in place.

A health check is served at /api/health. Put the site behind HTTPS and create the first account before the URL is public.

Data and recovery

Persist the storage volume mounted at /app/data/storage and the PostgreSQL volume. Pages and permissions live in Postgres. Attachments live in the storage volume. Redis holds cache and queues; it is not a substitute for the database backup.

Write down the restore sequence, required secrets, exposed ports, and the public URL baked into APP_URL. A scheduled backup is not complete until a clean host can restore it and pass a functional check.

Important limitation

APP_SECRET and the database password are part of the recovery kit. Losing the secret does not just lock the admin UI; it breaks an otherwise restored install.

Production checklist

  • Pin and record the deployed version.
  • Persist every documented data and configuration path.
  • Terminate TLS at a maintained reverse proxy or trusted tunnel.
  • Restrict administrative interfaces and rotate default credentials.
  • Monitor uptime, disk space, certificate expiry, and failed jobs.
  • Test an off-host backup with a real restore.

Official sources