mirror of
https://github.com/element-hq/element-docker-demo.git
synced 2026-01-25 14:31:09 +03:00
rewrite readme
This commit is contained in:
49
README.md
49
README.md
@@ -1,15 +1,31 @@
|
||||
# element-docker-demo
|
||||
|
||||
WIP of a docker-compose Matrix 2.0 stack to show off EW + EC + EX + Synapse + MAS + livekit.
|
||||
element-docker-demo is a minimal example of how to rapidly stand up a Matrix 2.0 stack using Docker, featuring:
|
||||
|
||||
Not remotely intended for serious production usage, but just to be the simplest possible way to get a
|
||||
hacker-friendly Matrix 2.0 stack up and running without requiring any k8s.
|
||||
* Element Web
|
||||
* Element Call
|
||||
* Synapse
|
||||
* Matrix Authentication Service
|
||||
* LiveKit
|
||||
* Postgres
|
||||
* nginx + letsencrypt / mkcert for TLS.
|
||||
|
||||
In future, ESS will support migrating from this (which should be trivial, in terms of copying the env vars and secrets
|
||||
into their ESS counterparts, and rehoming the postgres).
|
||||
This is **not** intended for serious production usage, but instead as a tool for curious sysadmins to easily experiment
|
||||
with Matrix 2.0 in a simple docker compose environment. As of Nov 2024, it's considered beta.
|
||||
|
||||
In particular, this has:
|
||||
* No support or maintenance guarantees whatsoever
|
||||
* No high availability, horizontal scalability, elastic scaling, clustering, backup etc.
|
||||
* No admin interface
|
||||
* No UDP traffic or TURN for LiveKit (all traffic is tunnelled over TCP for simplicity)
|
||||
* No integration manager, integrations, or identity lookup server
|
||||
|
||||
For production-grade Matrix from Element, please see https://element.io/server-suite (ESS).
|
||||
|
||||
## To run
|
||||
|
||||
Install [Docker Compose](https://docs.docker.com/compose/install/). Then:
|
||||
|
||||
```
|
||||
./setup.sh
|
||||
docker compose up
|
||||
@@ -17,6 +33,15 @@ docker compose up
|
||||
|
||||

|
||||
|
||||
## To configure
|
||||
|
||||
Check the .env file, or customise the templates in `/data-templates` and then `docker compose down && docker compose up -d`.
|
||||
|
||||
In particular, you may wish to:
|
||||
* Point at your own SMTP server rather than mailhog
|
||||
* Use your own reverse proxy rather than the provided nginx
|
||||
* Use your own database cluster
|
||||
|
||||
## To admin
|
||||
|
||||
```
|
||||
@@ -24,23 +49,9 @@ docker compose up
|
||||
docker compose exec mas mas-cli -c /data/config.yaml manage register-user
|
||||
```
|
||||
|
||||
```
|
||||
# if you change the OIDC clients in MAS:
|
||||
docker compose exec mas mas-cli -c /data/config.yaml config sync --prune
|
||||
```
|
||||
|
||||
## Diagnostics
|
||||
|
||||
```
|
||||
# check that OIDC is working - useful for debugging TLS problems
|
||||
docker compose exec mas mas-cli -c /data/config.yaml doctor
|
||||
````
|
||||
|
||||
## Todo
|
||||
|
||||
* [x] sort out the networking
|
||||
* [x] make nginx do something useful when running on a local workstation
|
||||
* [x] hook up letsencrypt to nginx properly
|
||||
* [x] hook up livekit properly
|
||||
* [x] make it work
|
||||
|
||||
|
||||
Reference in New Issue
Block a user