Kingsfordweg 151, 1043GR Amsterdam, The Netherlands ● 24/7 support — support@novogara.com
Knowledge base

Running a Mastodon instance

A Mastodon server puts you on the fediverse under your own domain — your rules, your moderation, your data. It also puts you in charge of a small but real piece of social infrastructure.

Mastodon is several services at once: a Rails web application, a Node streaming server, Sidekiq background workers, PostgreSQL and Redis. None are individually heavy, but together they want a few gigabytes of RAM and steady attention.

The components

  • Rails web + Node streaming, behind a reverse proxy
  • Sidekiq workers — these do the federation heavy lifting
  • PostgreSQL and Redis — see PostgreSQL and Redis
  • Object or local storage for media

Media is the storage story

Your instance caches avatars, images and video from every account your users follow across the whole network. That cache grows without bound. Run the tootctl media remove cleanup on a timer and keep media on object storage or a dedicated volume — otherwise the disk fills and the instance stops. See object storage.

Email that arrives

Sign-ups, confirmations and notifications all need working outbound mail. From a fresh server that mail lands in spam until the basics are right — see sending mail from your server and get SPF, DKIM and a clean reverse DNS in place first.

Federation never sleeps

Once you federate, Sidekiq is always working — delivering and receiving posts across thousands of servers. Watch the queue depth; a backed-up queue means posts arrive late and your instance feels broken. Scale Sidekiq threads before scaling anything else.

You are now a moderator

Running an instance means handling reports, abuse and the occasional legal notice about what your users post. That is a duty, not a background task — see abuse notices and the AUP. Decide your moderation stance before you open registration.


Still stuck? Mail support@novogara.com — an engineer answers, at any hour. Back to the knowledge base