In Zeiten von Corona finden deutlich mehr Treffen via Video-Konferenz statt. Auch bei mir. Nach den ersten Anzeichen der Überlast eines von mir verwendeten Video-Dienstes kam bei mir die Idee auf, selber eine Video-Conferencing-Server aufzusetzen. Dann bin ich „nur noch“ davon abhängig, dass der Provider, wo der Server steht, gut ausgerüstet ist und seine Anbindung stark genug ist bzw. bleibt. So bin ich auf Jitsi-Meet gestoßen: Ein Open-Source-Projekt nach meinem Geschmack. Und fertige offizielle Docker-Images samt Compose-Files gibt es auch. So einen wollte ich haben! 🙂
Eigentlich muss ich hier nicht viel schreiben, das Readme der Compose-Files enthält eigentlich schon alles an Info. Die Einrichtung ging wirklich einfach und „straight forward“.
Trotzdem hier nochmal in Stichpunkten, was ich getan habe:
git clone [https://github.com/jitsi/docker-jitsi-meet]
mv docker-jitsi-meet jitsi-meet
vi .env
Meine Änderungen darin:CONFIG=/opt/dockervolumes-xyz/jitsi/config HTTP_PORT=80 HTTPS_PORT=443 PUBLIC_URL=https://jitsi.xxxxx.yy DOCKER_HOST_ADDRESS=99.99.99.99 ENABLE_LETSENCRYPT=1 LETSENCRYPT_DOMAIN=jitsi.jitsi.xxxxx.yy LETSENCRYPT_EMAIL=dirk@xxxxx.yy ENABLE_AUTH=1 ENABLE_GUESTS=1 AUTH_TYPE=internal JVB_TCP_PORT=8443 ENABLE_HTTP_REDIRECT=1
Durch
ENABLE_AUTH
undENABLE_GUESTS
können nur authentifizierte User Meetings starten, aber jeder, der dann den Link hat, kann teilnehmen. Das halte ich für meine Zwecke für optimal.Durch
ENABLE_LETSENCRYPT
wird automatisch ein Letsencrypt-Zertifikat generiert. Hat sofort geklappt.-
Firewall freischalten:
- 80 und 443 für web
- 8443 und udp 10000 für Streaming
- DNS-Eintrag jitsi.xxxxx.yy -> 99.99.99.99
-
User anlegen:
docker-compose exec prosody prosodyctl --config /config/prosody.cfg.lua register meinuser meet.jitsi
-
starten:
docker-compose -f docker-compose.yml -f jibri.yml up -d
-
monitoring:
- http(s) (sehr simpel)
- cert-Check
Einen „schönen“ Health-Check-Entdpoint, der direkt verfügbar wäre, habe ich noch nicht gefunden.
Läuft einwandfrei – auch mit mehr als 2 Teilnehmern. Der Ressourcenverbrauch auf dem Docker-Host beläuft sich auf ca. 300 MB RAM und nur wenig CPU.
Backup der Dockervolumes sowie Aktualisierung der Images aus docker hub funktioniert bei mir ja „von selber„.
Wichtiger Sicherheitshinweis ist zu beachten:
siehe https://www.golem.de/news/sicherheitsluecke-unsichere-standardpasswoerter-in-jitsi-meet-2004-147840.html
Außerdem darf die PUBLIC_URL offenbar kein Anführungszeichen mehr enthalten (habe ich oben korrigiert).