A server for your community, on your hardware.

You run a Plazer community server with one command on a VPS, at home or on the dorm network. People sign in with the same account they use everywhere, and channels, roles and history live on a machine you control.

Plazer central serveraccounts, direct messages, groupsServer on a local networkYour serverAnother server

One command and the server is running.

A community server is a single program. You start it from a ready Docker image on a VPS, a home computer or a server in a rack, and the database and cache start right along with it.

  • plazer-communityThe server, written in Go. It runs your community's channels, roles, events, moderation and voice calls.
  • PostgreSQLThe server database: channels, roles, public channel messages and the encrypted blocks from private channels.
  • RedisA cache that keeps the server responsive, even when channels get crowded.
Terminal
# start the server
$ docker compose -f docker-compose.community.yml up -d
# update to a new version
$ docker compose -f docker-compose.community.yml pull
$ docker compose -f docker-compose.community.yml up -d

Where the server image comes from

The server image and its signature will be published together with the source code. Until then, you get a self-hosted server on request: write to kontakt@plazer.org and you receive the same image that runs srv.plazer.org.

You claim the server from the app, not from a back-office panel.

A new server has no owner yet. You become the owner in four steps in the regular Plazer app, and each step confirms you are connecting to your own machine.

Claiming your own server in Plazer: the steps and comparing the key fingerprint with the one the server shows
  1. 1
    Server logsClaim code:

    A code from the logs

    A freshly started server prints a one-time claim code in its logs. Only someone with access to the machine can see it, so nobody can claim the server before you.

  2. 2
    Add serverServer addressClaim code

    Add the server in Plazer

    In the app you choose "Add server" and enter the address and the code. You act from your normal Plazer account, with no separate admin password.

  3. 3
    In the appIn the logsFingerprints match

    The key fingerprint

    The app shows the server key fingerprint. You compare it with the one in the logs and know you are talking to your machine and not to someone in between.

  4. 4
    Server recovery keySave it nowYou are the owner

    The recovery key

    Finally you save the server recovery key. It restores your owner rights if you lose the device you claimed the server from.

One Plazer account on every server.

People do not create an account on your server. They sign in with the same account they use everywhere, and their friends and direct messages come along with them.

Plazer central serverShared by everyone
  • Accounts and sign-in
  • Friends and message requests
  • Direct messages
  • Private groups
Your serverOn your machine
  • Channels and categories
  • Roles and permissions
  • Channel history
  • Voice calls
  • Invites, bans and the audit log

No new accounts

Anyone with a Plazer account joins your server from an invite in one click.

Private chats stay off the server

Your members' direct messages and groups never pass through your server, so even its owner does not touch them.

One install, one community

Each install is a separate server with its own data. A second community is a second install, not a shared database.

When the central server takes a break, yours keeps going.

Your machine runs the channels and voice calls, so a break on our side does not stop them. Only direct messages and groups wait for the central server to come back, because it is the one that delivers them.

A normal dayCentral server breakCentral server is back
Text channels on your server
Working
Voice channels and calls
Working
Roles, moderation and invites
Working
Direct messages and groups
Waiting for the central server

What the server owner sees, and what they do not.

Running a server does not give you a view into other people's private conversations. This is what actually reaches your machine.

Sees

  • All content of public channels
  • Names and topics of private channels
  • Roles, bans and invites
  • Who writes in private channels, when and how much

Does not see

  • Content of private channels
  • Direct messages and groups
  • Video and audio of voice calls
  • Members' passwords and keys
  • An admin entering is always visible

    The owner and anyone with the Administrator role can enter a private channel, but that entry stays in the channel history for everyone to see.

  • Public messages are signed

    Every message in a public channel is signed by the author's device. The server can hide it but cannot forge its content.

  • Voice with no one in the middle

    A voice connection travels encrypted between devices, and each side's fingerprint is signed by its device key. A relay on the server can also hide participants' IP addresses.

Move to another machine in three steps.

You switch VPS providers or move the server from a home computer to a data centre. Everything the server keeps lies in three places. You copy them to the new machine, and members do not have to do a thing.

Old machine
New machine

Server data

  • PostgreSQL database
  • Attachments folder
  • Server key
  1. 1

    Copy three things

    You stop the server and copy the PostgreSQL database, the attachments folder and the server key file to the new machine.

  2. 2

    Start under the same address

    On the new machine you run the server on that data, with the same address in its configuration as before.

  3. 3

    Point the address at the new machine

    You change the DNS record or the address on your local network. Members' apps see the same address and the same key, so they connect as before.

The address and key are the server's identity

The address cannot change once the server is claimed, and to the apps a server with a new key is a different server altogether. That is why you copy the key instead of generating a new one.

A server on a local network: dorm, LAN party, office.

The server can run on an ordinary computer on the same network as its users. Channel chat and voice then travel over the local network instead of crossing the whole internet.

HallwayPlazer server
  • Dorm

    One computer in a room serves the channels for a whole floor or a whole hall of residence.

  • LAN party

    Voice channels for teams at an event where everyone sits on one network.

  • Office and studio

    The team server in the cupboard next door, with data that never leaves the building.

Server code under the AGPL-3.0 licence.

We will publish the Plazer server code under this licence. You will be able to read it, run it and change it, and the licence makes sure nobody locks improvements away from everyone else.

  • You run it

    Host the server wherever and for whoever you like, with no licence to buy and no user limit in a contract.

  • You change it

    Once the code is published, add a feature or change how the server behaves for your community. The code will be yours to modify.

  • You share your changes

    If you offer a modified server to others over a network, the AGPL requires the code of those changes to be available to them. That way improvements come back to everyone.

Questions about self-hosting

What people ask before they run a server for their community.

The software is free. You only pay for the machine you run it on, or nothing if it runs on your own computer.

No. They sign in with their Plazer account and join from an invite. Their friends and direct messages stay with the account, not the server.

No. Direct messages and groups never pass through your server. You can enter private channels as an admin, but everyone sees that entry in the channel history.

Your server's channels come back when the machine is running again. Members' direct messages and groups keep working, because the Plazer central server handles them.

The server image and its signature will be published together with the source code. Until then, write to kontakt@plazer.org and you receive the same image that runs srv.plazer.org.

Pull the new image and restart the containers: docker compose pull, then docker compose up -d. The data in the database stays where it is.

Yes. Copy the PostgreSQL database, the attachments folder and the server key file, then start the server on the new machine under the same address. Channels, roles, history and settings are in that data, so members do not have to do anything. Ownership is a separate matter: you hand the server to another member.

Read next

The servers and channels you will run, the encryption that protects them, and the bots you can add to your community.

Get Plazer

The app you claim and run your server from. Android, iPhone, iPad, computers and the browser tab.

Get Plazer