Self-hosting Armada
Start with the web app
Section titled “Start with the web app”The client is a static site: a Dockerfile, an nginx container, your own
domain and TLS in front of it. Nothing else on this page is required to reach
that — a client on your domain, pointed at relays that already exist, is a
complete self-hosted Armada and has no database to babysit.
It is also the only piece where hosting it yourself changes what your users get: your name, your colors, your defaults, and a build nobody else can push to.
The rest is already decentralized
Section titled “The rest is already decentralized”Underneath the client are three kinds of server, and Armada treats every one of them as a URL rather than as a home. They are all defaults, all editable in Settings, and all plural.
Relays
Carry the events. Armada ships with a couple and there are hundreds more, run by people who have never heard of your community.
Media servers
Hold attachments as content-addressed blobs. In a Concord community they are encrypted before upload, so the server stores ciphertext it cannot open.
Voice brokers
Issue a ticket for one LiveKit room. The broker never learns which community it belongs to, and the audio is end-to-end encrypted anyway.
Which means a member can change any of them and still be in the same community — and, symmetrically, that running one of them yourself buys you no authority over anybody. That is the trade: infrastructure you can leave is infrastructure that cannot hold you.
Run something public
Section titled “Run something public”So the interesting reason to run a relay, a media server or a voice broker is not your own community. It is that these are the commons Nostr actually runs on, and they are maintained by a few hundred people worldwide. A relay you stand up carries other people’s events. A Blossom server you stand up holds other people’s pictures. Neither asks who sent them.
Nostr relay
The load-bearing one. Store and forward events for anybody who connects.
Blossom server
Blobs by SHA-256. The cheapest useful thing to run, and the one most short of operators.
Audio/video server
LiveKit plus a blind token broker, for voice and video that stays off anyone else’s box.
Discord bridge
Not infrastructure — a door. Bridge a Discord channel to an Armada one while a community moves.
Build your own fleet
Section titled “Build your own fleet”Start with the client on your domain. Add a relay when you want the network to be one relay stronger, not when your community needs it — it doesn’t.
$ carry someone else's traffic