Paste Shaver

Text Content

# create the directories
mkdir -p config postgres media jetstream searchindex

# generate signing key
docker run --rm \
  --entrypoint="/usr/bin/generate-keys" \
  -v $(pwd)/config:/mnt \
  matrixdotorg/dendrite-monolith:latest \
  -private-key /mnt/matrix_key.pem

# generate config (adjust password; this assumes `dendrite.local` is your domain name)
docker run --rm \
  --entrypoint="/bin/sh" \
  -v $(pwd)/config:/mnt \
  matrixdotorg/dendrite-monolith:latest \
  -c "/usr/bin/generate-config \
  -dir /var/dendrite/ \
  -db postgres://dendrite:REPLACE_ME@postgres/dendrite?sslmode=disable \
  -server dendrite.local > /mnt/dendrite.yaml"

# create the docker network
docker network create proxy_http_network

# run the docker containers
docker compose up --detach

# create the initial admin account
docker compose exec \
  dendrite /usr/bin/create-account \
  -config /etc/dendrite/dendrite.yaml \
  -url http://127.0.0.1:8008 \
  -username MY_USERNAME \
  -admin

# test with cURL
curl http://localhost:8008/_matrix/client/versions