Host a Zipper Node
A node is the place a room assembles. You don't need to run one to
use Zipper — but if you'd rather rooms build in your memory,
on your server, this is everything you need.
What it takes
- A small Linux VPS. A $5/month box is plenty —
256 MB of RAM and a sliver of one CPU core run a node
comfortably.
- Docker with the Compose plugin.
- A domain name you can point a DNS record at —
the node lives at
zipper.yourdomain.com.
- nginx in front for TLS. An example config and a
one-line certbot command are in the package.
The node itself is one small, hardened container. It holds many
rooms at once, writes nothing to disk, keeps no logs, and evaporates
every room the moment it empties. Nothing to maintain — it runs or
it doesn't.
How you set it up
1
Unpack the package on your server
One folder: the node, a docker-compose file, an example
nginx config, a setup script, and a full README.
2
Run the setup script
sh setup.sh builds the container and starts it
on loopback. It tells you the two steps it leaves to you.
3
Point a domain and add the reverse proxy
Copy the example nginx config, drop in your domain, reload
nginx.
4
Turn on HTTPS
One certbot command issues a free certificate and switches
the node to HTTPS. Done — your node is live.
Download Node Package
Everything above, in one zip. The README walks every step in
full — read it before you start.
Public nodes
Status is checked live from your browser when this page loads.
Listing your node
To list your node on this page, set ZIPPER_LIST_NAME and
ZIPPER_PUBLIC_URL in your docker-compose.yml
and restart. The node announces itself to the directory and appears
here. Remove those two settings and restart to delist — the node
drops off the list within 15 minutes.