Back to Apps
Matrix Synapse

Deploy Matrix Synapse on Your Own Server

Server for the matrix protocol

πŸ“¦ Other

Want to deploy Matrix Synapse on your server faster? Try Senate with one-command setup, automatic HTTPS and monitoring.

Get Started

What is Matrix Synapse?

Synapse is a server implementation of the matrix protocol that allows you to host your own messaging server. Matrix is build to federate with other servers, so you can communicate with people from other servers. More information about matrix can be found here: https://matrix.org/

Learn more

Self-Host Matrix Synapse

Follow these steps to deploy on your own server.

1

Install Docker

Skip this step if Docker is already installed on your server.

curl -fsSL https://get.docker.com | sh
2

Configure

Customize the settings below. Defaults work for most cases.

General
3

Deploy

Copy the configuration and run it on your server.

services:
  matrix_synapse:
    environment:
      TZ: Europe/Berlin
    volumes:
      - matrix_synapse-data:/data
  matrix_synapse-db:
    image: postgres:14
    environment:
      POSTGRES_DB: synapse_db
      POSTGRES_INITDB_ARGS: --encoding='UTF8' --lc-collate='C' --lc-ctype='C'
      POSTGRES_PASSWORD: 48b0cfdeecd79c76b3f8
      POSTGRES_USER: synapse_user
    volumes:
      - matrix_synapse-db:/var/lib/postgresql/data
volumes:
  matrix_synapse-data: {}
  matrix_synapse-db: {}

Then run:

docker compose up -d
4

Access

Once started, access your app at http://localhost:8008

Why Self-Host Matrix Synapse?

Full Data Ownership

Your data stays on your servers. No third-party access.

No Monthly Fees

Pay only for your server. No per-seat or usage charges.

Complete Control

Customize, backup, and scale on your own terms.

Privacy & Compliance

Meet GDPR, HIPAA, or internal security requirements.

Technical Details

Want to go faster?

Try Senate! Senate handles Docker, HTTPS, updates, and monitoring for you. Deploy any of our 300+ apps with a single command.

Install on any Linux server:

sh -c "$(curl -sSL https://get.senate.sh)"