Inhaltsverzeichnis dieser Serie:
- Teil 1 – Synapse Server installieren
- Teil 2 – Element-Web installieren
- Teil 3– Mautrix-WhatsApp-Bridge installieren
Nachdem unser Synapse-Server nun läuft und föderiert, können wir uns nun dem nächsten Schritt zuwenden. Es wäre doch toll, eine eigene Weboberfläche für unseren Synapse-Server zu haben, oder? Also lasst uns dafür Element-Web installieren.
Teil 2 – Element-Web installieren
Den Cloudflare-Tunnel für Element-Web haben wir ja im Teil 1 schon erstellt. So müssen wir nur noch den entsprechenden Ordner erstellen und dann unseren "matrix" Stack in Portainer anpassen.
Zuerst der Ordner:
mkdir /portainer/Files/AppData/Config/Matrix/element
Und hier der Inhalt unseres Stacks:
services:
postgresql:
container_name: "matrix-postgres"
image: postgres:15-alpine
environment:
POSTGRES_PASSWORD: "[SupergeheimesPasswort]"
POSTGRES_USER: "synapse-user"
POSTGRES_DB: "synapse-db"
POSTGRES_INITDB_ARGS: "--encoding='UTF8' --lc-collate='C' --lc-ctype='C'"
volumes:
- type: bind
source: /portainer/Files/AppData/Config/Matrix/postgresdata/
target: /var/lib/postgresql/data/
restart: unless-stopped
networks: ["cloudflare-tunnel"]
synapse:
container_name: "matrix-synapse"
image: "matrixdotorg/synapse:latest"
volumes:
- type: bind
source: /portainer/Files/AppData/Config/Matrix/synapse/
target: /data
ports:
- 7090:8008
environment:
SYNAPSE_SERVER_NAME: "matrix.[deineAdresse.ch]"
SYNAPSE_REPORT_STATS: "no"
restart: unless-stopped
networks: ["cloudflare-tunnel"]
element:
container_name: "matrix-element"
image: "vectorim/element-web:latest"
volumes:
- type: bind
source: /portainer/Files/AppData/Config/Matrix/element/element-config.json
target: /app/config.json
ports:
- 7091:80
restart: unless-stopped
networks: ["cloudflare-tunnel"]
networks:
cloudflare-tunnel:
external: true
Damit läuft Element-Web bereits. Ich habe bei mir aber noch die Datei element-config.json angepasst, sodass sich nur Konten von meinem Synapse-Server anmelden können.
Der nächste Teil ist also Optional:
cd /portainer/Files/AppData/Config/Matrix/element
nano element-config.json
Hier habe ich die ersten 12 Zeilen folgendermassen angepasst:
{ "default_server_config": { "m.homeserver": { "base_url": "https://matrix.[deineAdresse.ch]", "server_name": "matrix.[deineAdresse.ch]" }, "m.identity_server": { "base_url": "https://vector.im" } }, "disable_custom_urls": true, "disable_guests": true,
Danach unbedingt den "element" Container neu starten.
Ausblick
Mit Element-Web haben wir nun sogar einen eigenen Webzugang zu unserem Synapse-Server. Jetzt fehlt nur noch die WhatsApp Bridge. Um die kümmern wir uns im Teil 3.
Kommentare: 0