Docmost: The Self-Hosted Notion Alternative That Gives You Full Control Over Your Data
Looking for a Notion alternative you can self-host? Docmost offers real-time collaboration, built-in diagrams, and complete data sovereignty—all without cloud subscription fees.
Table of Contents
- What is Docmost?
- Features That Matter for Homelab
- Real-Time Collaboration
- Content Organization
- Rich Content Support
- Search and Discovery
- Import and Export
- AI Features (Enterprise Tier)
- Self-Hosting Guide
- Minimum Requirements
- Basic Docker Compose Setup
- Adding Local AI with Ollama
- Reverse Proxy Configuration
- Backup Strategy
- Docmost vs Notion: The Comparison
- When to Choose Docmost
- When to Choose Notion
- Use Cases for Your Homelab
- Personal Knowledge Base
- Family Wiki
- Technical Documentation
- Air-Gapped Environments
- Self-Hosted AI Stack
- Pricing Reality Check
- Homelab Deployment Recommendations
- Network Architecture
- Storage Strategy
- Security Checklist
- Upgrade Process
- The Verdict
Notion revolutionized how we think about documentation. But at some point, almost every homelabber asks the same question: what if I could run this myself? What if my wiki, my knowledge base, my team’s collective brain—actually lived on my infrastructure?
That’s where Docmost comes in. It’s an open-source collaborative documentation platform positioned as a self-hosted alternative to Notion and Confluence. And it’s surprisingly good.
What is Docmost?
Docmost is a collaborative wiki and documentation platform that runs entirely on your infrastructure. Multiple users can edit pages simultaneously with real-time sync, live cursors, and instant collaboration—just like Notion. But underneath, you get complete control over your data, no subscription fees, and the ability to run it in air-gapped environments.
The project is open-source under AGPL 3.0 for core features, with an enterprise tier that adds advanced capabilities like SSO, page-level permissions, and AI integration. Whether you’re a solo developer documenting side projects or a small team building an internal knowledge base, Docmost scales to fit.
Key positioning:
- Self-hosted: Your data never leaves your infrastructure
- Air-gapped ready: Can run in completely isolated environments (defense, healthcare, regulated industries)
- Enterprise-ready: Compliance features for GDPR, ITAR, FedRAMP
- Open-source core: AGPL 3.0 licensed with optional paid upgrades
Features That Matter for Homelab
Real-Time Collaboration
The collaborative editor is Docmost’s centerpiece. Multiple people can work on the same page simultaneously, seeing each other’s cursors live. Changes sync instantly across all connected users. It feels like Notion’s collaborative editing—because it essentially is, just running on your hardware.
Content Organization
Spaces let you create dedicated areas for different teams, projects, or departments. Each space has its own permission settings, so you can compartmentalize access without cross-contamination.
Nested navigation works through a drag-and-drop sidebar. Create hierarchies, nest pages arbitrarily deep, and reorganize on the fly. It’s intuitive enough that non-technical team members can manage it.
Permissions work at both the workspace and space level. Grant access to specific users or entire groups, with fine-grained control over who can view, edit, or manage content.
Rich Content Support
Docmost supports the content blocks you’d expect:
- Tables with resizable columns, mergeable cells, colored cells, and header rows
- Diagrams via built-in Draw.io, Excalidraw, and Mermaid support—no external embeds needed
- Math equations using KaTeX for both inline and block-level expressions
- Callouts and toggle blocks for structured, collapsible content
- File attachments stored locally or on S3-compatible storage
- Embeds for Airtable, Loom, Miro, and other popular tools
The diagram support is genuinely useful. Instead of linking out to Lucidchart or dealing with export/import workflows, you create flowcharts and architecture diagrams directly in your documentation.
Search and Discovery
Full-text search works across all your pages with type and space filters. The free tier uses PostgreSQL’s built-in search capabilities. Enterprise users can opt for Typesense for enhanced search performance at scale.
Import and Export
Moving from something else? Docmost supports:
- ZIP archive import/export
- Markdown and HTML bidirectional
- Notion import (Community/Business/Enterprise)
- Confluence import (Enterprise)
- DOCX import (Enterprise)
Export options include printing to PDF via your browser—simple, but effective.
AI Features (Enterprise Tier)
This is where Docmost gets interesting for homelabbers. The AI features support multiple backends:
- Cloud AI: OpenAI, Azure OpenAI, Google Gemini
- Self-hosted AI: Ollama with local LLMs
An AI assistant helps with writing and content generation. AI search lets you ask questions across your knowledge base and get relevant answers. MCP support allows connecting external AI tools.
The ability to run AI locally via Ollama means you can have intelligent search and writing assistance without sending your data to OpenAI or Google. For homelabbers who’ve invested in GPU infrastructure, this is a significant advantage.
Self-Hosting Guide
Minimum Requirements
| Component | Requirement |
|---|---|
| Docker | Any recent version |
| PostgreSQL | 16+ |
| Redis/Valkey | 7+ |
| RAM | 1-2GB minimum (more with Ollama) |
Basic Docker Compose Setup
Here’s a starter configuration that works for most homelab deployments:
services:
docmost:
image: docmost/docmost:latest
container_name: docmost
depends_on:
- db
- redis
environment:
APP_URL: "https://docs.yourdomain.com"
APP_SECRET: "${APP_SECRET}"
DATABASE_URL: "postgresql://docmost:${DB_PASSWORD}@db:5432/docmost"
REDIS_URL: "redis://redis:6379"
DISABLE_TELEMETRY: "true"
ports:
- "3000:3000"
restart: unless-stopped
volumes:
- docmost_data:/app/data/storage
networks:
- docmost_network
db:
image: postgres:18
container_name: docmost_db
environment:
POSTGRES_DB: docmost
POSTGRES_USER: docmost
POSTGRES_PASSWORD: ${DB_PASSWORD}
restart: unless-stopped
volumes:
- postgres_data:/var/lib/postgresql/data
networks:
- docmost_network
redis:
image: redis:8
container_name: docmost_redis
command: ["redis-server", "--appendonly", "yes", "--maxmemory-policy", "noeviction"]
restart: unless-stopped
volumes:
- redis_data:/data
networks:
- docmost_network
volumes:
docmost_data:
postgres_data:
redis_data:
networks:
docmost_network:
driver: bridge
Quick start:
mkdir docmost && cd docmost
curl -O https://raw.githubusercontent.com/docmost/docmost/main/docker-compose.yml
# Create .env file
echo "APP_SECRET=$(openssl rand -hex 32)" > .env
echo "DB_PASSWORD=$(openssl rand -hex 16)" >> .env
docker compose up -d
Check health at https://docs.yourdomain.com/api/health.
Adding Local AI with Ollama
If you want self-hosted AI capabilities, extend the compose:
ollama:
image: ollama/ollama:latest
container_name: ollama
restart: unless-stopped
volumes:
- ollama_data:/root/.ollama
networks:
- docmost_network
Then configure Docmost to use it:
environment:
AI_DRIVER: ollama
OLLAMA_API_URL: http://ollama:11434
AI_EMBEDDING_MODEL: nomic-embed-text
AI_COMPLETION_MODEL: llama3.2
Reverse Proxy Configuration
Caddy (simplest):
docs.yourdomain.com {
reverse_proxy localhost:3000
}
Nginx (for existing setups):
server {
listen 443 ssl http2;
server_name docs.yourdomain.com;
location / {
proxy_pass http://localhost:3000;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
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-Proto $scheme;
}
}
Critical: WebSocket support (Upgrade and Connection headers) is required for real-time collaboration. Without it, you’ll get static pages with no live sync.
Backup Strategy
PostgreSQL gets backed up with pg_dump:
docker exec docmost_db pg_dump -U docmost docmost > backup_$(date +%Y%m%d).sql
Redis persistence is already configured with appendonly. Your Docmost storage volume contains uploaded files and attachments.
For full restorability:
# Restore database
cat backup.sql | docker exec -i docmost_db psql -U docmost docmost
# Restart services
docker compose restart docmost
Docmost vs Notion: The Comparison
| Feature | Docmost | Notion |
|---|---|---|
| Hosting | Self-hosted or cloud | Cloud only |
| Data sovereignty | Full control | Notion servers |
| Air-gapped | Yes | No |
| Real-time collaboration | Yes | Yes |
| Page hierarchy | Yes | Yes |
| Databases | No | Yes (powerful) |
| Templates | Basic | Extensive marketplace |
| SSO/LDAP | Enterprise tier | Business+ plans |
| API access | Enterprise tier | All plans |
| Diagrams | Built-in (Draw.io, Excalidraw, Mermaid) | Embed required |
| Math equations | KaTeX | Yes |
| AI | Self-hosted or cloud | Cloud only (Notion AI) |
| Open source | Yes (AGPL 3.0) | No |
| 10 seats pricing | $35/mo (Business) | $100/mo (Team) |
When to Choose Docmost
- You need complete control over your data
- Air-gapped or compliance environments are required
- You want to avoid cloud subscription costs
- Diagram integration matters (flowcharts, architecture docs)
- You already run PostgreSQL and Redis infrastructure
- You want local AI without data leaving your network
When to Choose Notion
- You need powerful database functionality (relations, rollups, formulas)
- Template marketplace saves you significant setup time
- Mobile apps are essential for your workflow
- You want a managed service with zero maintenance
- Third-party integrations are critical to your stack
Use Cases for Your Homelab
Personal Knowledge Base
The free tier gives you unlimited spaces, real-time collaboration, and page history. Perfect for documentation that grows with your projects. No subscription, no lock-in.
Family Wiki
Create spaces for family projects, shared reference documents, travel planning. Enable public sharing for pages you want to distribute to extended family. Permissions let you control exactly who sees what.
Technical Documentation
The combination of KaTeX math support, Mermaid diagrams, code blocks with syntax highlighting, and Markdown import/export makes Docmost genuinely useful for technical writing. Architecture diagrams stay in your docs instead of scattered across draw.io links that eventually rot.
Air-Gapped Environments
If you work in defense, healthcare, or other regulated industries, Docmost can run in completely isolated networks. No external dependencies. Your data never leaves your controlled perimeter.
Self-Hosted AI Stack
Pair Docmost with an Ollama container running a local model. Your knowledge base gains AI search and writing assistance without any data ever touching OpenAI’s servers. For homelabbers running GPU hardware, this is the compelling combination.
Pricing Reality Check
The free Community tier covers most personal and small team needs:
- Unlimited spaces
- Real-time collaboration
- Page history and restore
- Comments
- Built-in diagrams
- Public sharing (with branding)
Business tier ($3.50/seat/month, minimum 10 seats) unlocks:
- Page-level permissions
- SSO via SAML/OIDC/LDAP
- MFA (TOTP)
- AI features
- Confluence and DOCX import
- Removes public sharing branding
Enterprise adds audit logs, security controls, page verification workflows, and priority support.
For homelabbers, the free tier is probably enough. If you need SSO or want to test AI features, the Business tier is genuinely affordable compared to Notion’s $10/user/month.
Homelab Deployment Recommendations
Network Architecture
Run Docmost behind your existing reverse proxy (Caddy, Nginx, Traefik). Use the docmost_network bridge network to isolate services from your broader infrastructure.
Storage Strategy
The default local storage driver is fine for personal use. For teams or larger deployments, configure S3-compatible storage (Minio, Wasabi, Backblaze) to separate file storage from the application:
environment:
STORAGE_DRIVER: s3
AWS_S3_ACCESS_KEY_ID: ${S3_KEY}
AWS_S3_SECRET_ACCESS_KEY: ${S3_SECRET}
AWS_S3_REGION: us-east-1
AWS_S3_BUCKET: docmost-files
AWS_S3_ENDPOINT: https://s3.wasabisys.com
Security Checklist
- Generate strong
APP_SECRET(32+ characters random) - Use a strong unique
DB_PASSWORD - Enable HTTPS via your reverse proxy
- Set
DISABLE_TELEMETRY=trueif you prefer no usage data - Consider MFA (Enterprise tier) for team deployments
- Keep PostgreSQL and Redis on isolated internal networks
Upgrade Process
Staying current is straightforward:
docker pull docmost/docmost:latest
docker compose up --force-recreate --build docmost -d
Database migrations run automatically. Check release notes for any required .env changes.
The Verdict
Docmost isn’t trying to be Notion. It’s trying to be your Notion—one that runs on your hardware, respects your data sovereignty, and doesn’t charge you for seats you’ve already paid for with your infrastructure investment.
The feature set covers collaborative documentation fundamentals. The diagram integration is genuinely useful. The ability to run local AI via Ollama is a homelabber’s dream. The free tier is generous. And the Business pricing is honest—$3.50/seat/month for SSO and AI isn’t extracting value from your lock-in.
If you’re running a homelab, managing a small team, or building documentation for projects that matter, Docmost deserves a spot in your stack. The Docker Compose takes five minutes to spin up. See if it fits before paying Notion’s cloud rents.
Resources:

Comments
Powered by GitHub Discussions