Jitsi-Meet via Docker

Die Installation von Jitsi-Meet auf einem eigenen (Ubuntu-) Server ist Dank Ubuntu-Repositories von Jitsi trivial – allerdings werden damit natürlich auch eine ganze Menge Dinge installiert, die nicht so einfach mit anderen zusammenarbeiten. Z.B. auf einem Hosting-Server, der parallel Webhosting macht, müssten zusätzliche Dinge berücksichtigt werden.

Ich wollte daher einmal eine Jitsi-Meet-Installation mit Docker bzw. Docker-Compose aufsetzen. Das geht zwar (im Unterschied, zu der folgenden Version) auch mit einer vollständigen „Dockerisierung“ zusammen mit z.B. Traefik-Container, letzteres harmoniert dann aber wieder weniger mit einem vorinstallierten Hosting von z.B. ispconfig.

Ich habe einen ziemlich schicken (wenn auch teilweise eigenwilligen) Artikel im Netz gefunden, der mir genau bei dieser Installation sehr half:

https://adminforge.de/linux-allgemein/eigene-jitsi-meet-instanz-installieren-docker-ubuntu-nginx/ und https://adminforge.de/linux-allgemein/jitsi-meet-docker-instanz-anpassen/

Hinzugebastelt habe ich die (zunächst interne) Authentifikation:

In der /opt/docker/jitsi-meet/.env setze ich an den passenden Stellen (alle Einträge sind vorbereitet):

# Enable authentication
ENABLE_AUTH=1

# Enable guest access

ENABLE_GUESTS=1

# Select authentication type: internal, jwt or ldap
AUTH_TYPE=internal

Nachdem die Container mit ./restart.sh gestartet sind, wechsel ich in den Prosody-Container:

docker exec -it jitsi-meet_prosody_1 /bin/bash

Dort lege ich den Benutzer mit seinem Passwort an („meet.jitsi“ ist korrekt und unabhängig vom DNS-Namen, den ich für meine Instanz gewählt habe:

prosodyctl --config /config/prosody.cfg.lua register Benutzername meet.jitsi Passwort

Auf dem Host selbst sichere ich dann die Konfiguration:

cd /opt/docker/jitsi-meet
tar -czf .prosody_accounts.tgz .jitsi-meet-cfg/prosody/config/data/meet%2ejitsi

.. und ändere das restart-Skript wie folgt ab:

[...]
# Delete configs and recreate folders
rm -rf .jitsi-meet-cfg/
mkdir -p .jitsi-meet-cfg/{web/letsencrypt,transcripts,prosody,jicofo,jvb}

# Set Prosody accounts 
tar -xzf .prosody_accounts.tgz

[...]

Eigenartigerweise habe ich eben nach einem Reboot festgestellt, dass die Container zwar wieder gestartet waren, aber die Anmeldung hatte nicht funktioniert. Nach einem manuellen /opt/docker/jitsi-meet/restart.sh lief das wieder. (Das muss ich nochmal untersuchen).