Self-host Docmost
A collaborative wiki and documentation tool that positions itself as an open-source alternative to Confluence and Notion: real-time co-editing, spaces, groups and permissions, comments, page history, search, attachments, and built-in Draw.io, Excalidraw, and Mermaid diagrams. The core is AGPL-3.0 and runs as one Node.js container beside PostgreSQL and Redis; Bases (databases), SSO, AI features, audit logs, and SCIM are licensed Business/Enterprise features.
Key facts
Pick Docmost when you want the Notion/Confluence shape — spaces, real-time co-editing, comments, page history, diagrams — under a genuinely open AGPL-3.0 core and a three-container compose file the docs hand you directly. Know where the paywall sits first: Bases (databases), SSO, AI features, audit logs and SCIM are licensed Business or Enterprise features, so a team that needs SAML or LDAP login is buying a license even when self-hosting.
Follow the Docmost deploy guide →What you need
- Any VPS with at least 1024 MB of RAM
- A domain you control — most self-hosted setups need HTTPS in front of them
- Under an hour if you've used Docker before
Paid link — we earn a commission if you shop through it.
Install
Run these commands on your server:
# Docmost — the official compose file (app + PostgreSQL + Redis), as the docs install it
mkdir -p docmost && cd docmost
curl -O https://raw.githubusercontent.com/docmost/docmost/main/docker-compose.yml
# APP_URL must be a real URL — Docmost exits on a placeholder like SERVER_IP. This uses the box's first IP, which on a cloud VM is usually the private one; use your public IP or domain instead. APP_SECRET gets a 32+ char secret,
# and the Postgres password (it appears twice — the /g rewrites both with the same value)
sed -i "s|http://localhost:3000|http://$(hostname -I | cut -d' ' -f1):3000|; s|REPLACE_WITH_LONG_SECRET|$(openssl rand -hex 32)|; s|STRONG_DB_PASSWORD|$(openssl rand -hex 16)|g" docker-compose.yml
docker compose up -d # → http://SERVER_IP:3000 (finish the workspace setup in the browser)What you take on
Docmost is moving fast and its open-core split is explicit; both deserve a look before you adopt it:
An alternative to
Head-to-head
A real-time Notion-style wiki with a paid ring vs. the simplest fully free docs wiki.
Two Notion-style real-time wikis on the same stack — an AGPL core with a paid ring vs. a source-available whole.
More in Wiki & docs
BookStack
DokuWiki
MediaWiki
Outline
Common questions
Docmost exits with {"isUrl":"APP_URL must be a URL address"}. What is wrong?
Docmost validates APP_URL at startup and exits if it is not a valid URL. A placeholder such as http://SERVER_IP:3000 fails the check (an underscore is not allowed in a hostname), so the container stops seconds after docker compose up -d reports success. Set APP_URL to the address you will actually open: your domain, or http://:3000. The install above fills in the server's first IP address, which on a cloud VM is usually the private one, so replace it if you connect from outside.