Go to file
James be2cc1a25e Add networks
so matrix and be connected to an existing reverse proxy network
2022-02-03 13:16:31 +00:00
.env.example Add networks 2022-02-03 13:16:31 +00:00
.gitignore add postgres service for backend database 2022-01-29 00:15:18 +00:00
README.md add initial instructions to README 2022-02-02 17:31:58 +00:00
docker-compose.yaml Add networks 2022-02-03 13:16:31 +00:00

README.md

Matrix Synapse (Docker Compose)

Prerequisites

  1. Docker
  2. Docker Compose
  3. A domain

Setup

Create a .env file

  1. Create a copy of .env.example:
cp .env.example .env
  1. Replace VOLUME_PATH variable if you wish to change where volume data is stored

  2. Replace SERVER_NAME variable with your Matrix server's domain name (e.g. matrix.example.com)

  3. Replace TZ variable with your timezone

  4. Create the required PostgreSQL secret file postgres_password.txt and insert a secure password (you should consider restricting access to this file)

Generate homeserver.yaml

  1. Run the following command to use the matrixdotorg/synapse image to generate a homeserver.yaml file (replace $VOLUME_PATH and $SERVER_NAME with the values you set in your .env file):
sudo docker run -it --rm \
    --mount type=bind,src=$VOLUME_PATH/data,dst=/data \
    -e SYNAPSE_SERVER_NAME=$SERVER_NAME \
    -e SYNAPSE_REPORT_STATS=no \ # Change to yes if you wish to report stats to Matrix
    matrixdotorg/synapse:latest generate

The homeserver.yaml file should now exist at $VOLUME_PATH/data/homeserver.yaml

  1. Open the newly created homeserver.yaml in your favourite editor

  2. Locate the following lines in the config:

database:
  name: sqlite3
  args:
    database: /data/homeserver.db
  1. Replace these lines with the following (replace secretpassword with the password you put into postgres_password.txt):
database:
  name: psycopg2
  txn_limit: 10000
  args:
    user: synapse_user
    password: secretpassword
    database: synapse
    host: postgres
    port: 5432
    cp_min: 5
    cp_max: 10
  1. Bring up the containers!
sudo docker-compose -p matrix-synapse up -d