Business Apps 1 service 3 GiB RAM 10 GB disk

Rocket.Chat

Team chat with an apps marketplace and omnichannel - stateless, on a MongoDB replica set.

One-click deploy, from $25/mo on a Miget plan.

Rocket.Chat is the maximalist open-source team chat: channels, threads, DMs, voice/video, an apps marketplace, and omnichannel (livechat widget, email, social) - the most feature-rich free option, MIT at the core. The app itself is stateless; everything lives in MongoDB.

That MongoDB is the one real requirement: Rocket.Chat needs a replica set (it relies on change streams), which this catalogue’s mongodb template provides as three nodes. Deploy that, point MONGO_URL at it, and the Rocket.Chat container is disposable - a clean cross-template showcase.

This catalogue ships Mattermost as the simpler default team chat (one plain Postgres); Rocket.Chat is here for teams who want its marketplace and omnichannel and are happy running the replica set alongside.

#what you get

  • Channels, threads, DMs, voice/video, screen share
  • Apps marketplace and a rich integration ecosystem
  • Omnichannel: livechat widget, email, and social inboxes
  • Stateless app container - all state in MongoDB
  • Leans on the mongodb replica-set template (3 nodes)
  • MIT core (enterprise features gated by a key)

#topology

ServiceRolePublic
rocketchatserver + API (stateless, :5000)yes
mongoMongoDB replica set - the catalogue’s mongodb template on Migetno

#miget sizing

// this stack needs

3 GiB RAM · 10 GB disk · 1 service

The app is stateless (2 GiB) - the mongodb template carries persistence. Add its 3-node footprint when budgeting the full setup.

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.

ServicePlanMonthlyWhat you get
Rocket.Chat on Miget 4 GiB plan$25this whole stack, flat - no usage meters, and room left for your own apps
SlackPro~$219$8.75/user/mo at 25 users
Rocket.Chat Cloudpaidusage-basedcontact-sales; the self-hosted Community edition is free (MIT)

#vs. other PaaS

Estimated monthly cost of running this exact stack (3 GiB RAM, 10 GB disk, 1 container) elsewhere, from published June 2026 rates.

PlatformEst. monthlyNotes
Miget $25 flat compose stacks first-class: one deploy, dedicated vCPU, managed Postgres/Valkey, volumes and TLS all included in the plan
Heroku ~$150 no volumes; nothing between 1 GB ($50) and 2.5 GB ($250) dynos - 2 GB containers cost far more than shown
DO App Platform ~$41 no persistent volumes - stateful containers need managed DBs/Spaces (base $5 Spaces included here)
Render ~$40 per-service instances (0.5 GB $7, 2 GB $25) - every container is its own paid service
Railway ~$32 usage-based ($10/GB RAM-mo); vCPU billed separately at $20/vCPU-mo on top
Fly.io ~$19 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

  1. Create a Compose Stack in app.miget.com pointing at the templates repository
  2. Set the stack path to rocketchat
  3. Set the required variables:
    • ROOT_URL, the app’s https domain
    • MONGO_URL, the mongodb template’s replica-set connection string (…?replicaSet=rs0)
  4. 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/rocketchat
docker compose up -d

Same files, same behavior. The template README covers connection strings and scaling notes.

#faq

Why does it need a MongoDB replica set?

Rocket.Chat uses MongoDB change streams for realtime updates, which require a replica set - standalone MongoDB is not supported. The catalogue’s mongodb template is a 3-node replica set built for exactly this; point MONGO_URL at it with ?replicaSet=rs0.

Rocket.Chat or Mattermost?

Mattermost is the lower-effort default (one plain managed Postgres, this catalogue’s recommended team chat). Rocket.Chat brings an apps marketplace and omnichannel support, at the cost of running the MongoDB replica set. Pick by whether you want those extras.

Is the app really stateless?

Yes - uploads default to GridFS in MongoDB and all data lives there, so the Rocket.Chat container has no volume. Redeploys and upgrades are clean; back up the mongodb template and you have backed up everything.

Ship Rocket.Chat today

One compose stack, 3 GiB of RAM, from $25/month flat, and it runs on your laptop with the same files.