Docmost
A real Confluence / Notion alternative - collaborative wiki on managed Postgres + Valkey + Buckets, no per-seat bill.
One-click deploy, from $25/mo on a Miget plan.
Docmost is open-source team documentation done properly: real-time block editing, nested spaces, granular permissions, inline comments, and diagrams (Draw.io, Excalidraw, Mermaid). It is the rare self-hosted wiki polished enough to replace Confluence or Notion without anyone grumbling.
The template runs Docmost on a managed Postgres (with pgvector for search) and a managed Valkey, with attachments on a Miget Bucket. Point storage at the Bucket and the app container is effectively stateless - content is in Postgres, files in object storage.
The reason to self-host is the per-seat math: collaborative doc tools charge per person every month, which punishes you for growing the team. Docmost is one flat plan for everyone, with the content sitting in a database you can query and back up.
Upstream project: Docmost
#what you get
- Real-time collaborative editor with nested spaces
- Granular permissions, comments, and page history
- Diagrams: Draw.io, Excalidraw, Mermaid
- Full-text search backed by Postgres + pgvector
- Attachments on a Miget Bucket - app stays stateless
- AGPL-3.0; official image, no per-seat metering
#topology
| Service | Role | Public |
|---|---|---|
| docmost | wiki + editor (:5000) | yes |
| db | managed Postgres + pgvector | no |
| redis | managed Valkey (sessions/queues) | no |
#miget sizing
// this stack needs
2.3 GiB RAM · 10 GB disk · 3 services
1 GiB serves a team comfortably. Disk is just the Postgres footprint; attachments live in the Bucket, so the app does not grow a volume.
Hobby - recommended fit
$25/mo
2 vCPU · 4 GiB · 80 GiB disk
Headroom for your own apps: 8 GiB at $49/mo
Professional - production
$43/mo
2 vCPU · 4 GiB · 25 GiB disk
Dedicated resources, production SLOs - plan details
One Miget plan is a fixed pool of compute - the whole stack (managed databases included) deploys inside it, and anything left over runs your other apps. No per-service or per-seat math.
#vs. the managed service
What the hosted equivalents charge, against the flat Miget plan this stack fits on. Prices as of June 2026, sources linked.
| Service | Plan | Monthly | What you get |
|---|---|---|---|
| Docmost on Miget ★ | 4 GiB plan | $25 | this whole stack, flat - no usage meters, and room left for your own apps |
| Notion | Business | ~$200 | $20/seat/mo at 10 seats |
| Confluence | Standard | ~$60 | ~$6.05/user/mo at 10 users |
Wikis are per-seat everywhere except your own; Docmost has no seat concept.
#vs. other PaaS
Estimated monthly cost of running this exact stack (2.3 GiB RAM, 10 GB disk, 3 containers) elsewhere, from published June 2026 rates.
| Platform | Est. monthly | Notes |
|---|---|---|
| Miget ★ | $25 flat | compose stacks first-class: one deploy, dedicated vCPU, managed Postgres/Valkey, volumes and TLS all included in the plan |
| Heroku | ~$113 | no volumes; nothing between 1 GB ($50) and 2.5 GB ($250) dynos - 2 GB containers cost far more than shown |
| DO App Platform | ~$32 | no persistent volumes - stateful containers need managed DBs/Spaces (base $5 Spaces included here) |
| Render | ~$31 | per-service instances (0.5 GB $7, 2 GB $25) - every container is its own paid service |
| Railway | ~$24 | usage-based ($10/GB RAM-mo); vCPU billed separately at $20/vCPU-mo on top |
| Fly.io | ~$15 | cheapest sticker price - but burstable shared CPUs (1/16 core; dedicated vCPUs cost ~2-3×), no compose deploys (one app per container, manual wiring), managed DBs billed extra |
Estimates assume RAM fully allocated at published on-demand rates - and sticker price isn't the whole comparison: the cheaper rows buy burstable shared CPUs, per-service wiring instead of a compose deploy, and managed databases billed separately. Heroku and DO App Platform have no persistent volumes at all - stateful stacks like this one need workarounds there.
#deploy it
On Miget
- Create a Compose Stack in app.miget.com pointing at the templates repository
- Set the stack path to
docmost -
Set the required variables:
APP_SECRET, signs sessions and tokens (openssl rand -hex 32)STORAGE_DRIVER=s3 + AWS_S3_*, a Miget Bucket for attachmentsAPP_URL, the https domain, set after first deploy
- Deploy. Miget layers
compose.miget.yaml(RAM, privacy, volumes, managed services) automatically
Locally first?
Every template is portable, vanilla Docker Compose - the Miget overrides are ignored locally:
git clone https://github.com/deployable-sh/stacks
cd miget-compose-templates/docmost
docker compose up -d Same files, same behavior. The template README covers connection strings and scaling notes.
#faq
What does this save vs Confluence or Notion?
Confluence Standard is about $5.16/user/month and Notion Business is $20/seat - $200/month for a 10-person team. Docmost is one flat plan (roughly $13-25/month) for the whole team, with content in a Postgres you own.
Why put attachments on a Bucket instead of a volume?
With STORAGE_DRIVER=s3 pointed at a Miget Bucket, every uploaded file lives in object storage and the app holds no local state. That keeps redeploys and rollbacks clean and lets storage grow independently of the app.
Is the editor actually real-time?
Yes - Docmost uses a collaborative editor backed by Valkey, so multiple people edit the same page live, with comments and page history. It is closer to Notion’s feel than to a static wiki.
Ship Docmost today
One compose stack, 2.3 GiB of RAM, from $25/month flat, and it runs on your laptop with the same files.