mirror of
https://github.com/element-hq/element-docker-demo.git
synced 2026-01-25 22:37:00 +03:00
rewrite readme
This commit is contained in:
49
README.md
49
README.md
@@ -1,15 +1,31 @@
|
|||||||
# element-docker-demo
|
# 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
|
* Element Web
|
||||||
hacker-friendly Matrix 2.0 stack up and running without requiring any k8s.
|
* 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
|
This is **not** intended for serious production usage, but instead as a tool for curious sysadmins to easily experiment
|
||||||
into their ESS counterparts, and rehoming the postgres).
|
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
|
## To run
|
||||||
|
|
||||||
|
Install [Docker Compose](https://docs.docker.com/compose/install/). Then:
|
||||||
|
|
||||||
```
|
```
|
||||||
./setup.sh
|
./setup.sh
|
||||||
docker compose up
|
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
|
## To admin
|
||||||
|
|
||||||
```
|
```
|
||||||
@@ -24,23 +49,9 @@ docker compose up
|
|||||||
docker compose exec mas mas-cli -c /data/config.yaml manage register-user
|
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
|
## Diagnostics
|
||||||
|
|
||||||
```
|
```
|
||||||
# check that OIDC is working - useful for debugging TLS problems
|
# check that OIDC is working - useful for debugging TLS problems
|
||||||
docker compose exec mas mas-cli -c /data/config.yaml doctor
|
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