In dieser Anleitung zeige ich euch, wie ihr eure Jitsi Meet Docker Instanz einfach anpassen könnt.
Update
02.05.2021 | Leichte Anpassungen. Funktioniert nun mit der aktuellen Version stable-5765-1. |
16.02.2021 | Fehler bei Logoanpassung behoben. Neue Funktionen hinzugefügt. |
15.02.2021 | Angepasst an Version: stable-5390-3 |
03.01.2021 | Erstellung dieser Anleitung |
Alle Anpassungen bei Jitsi sind leider nicht dauerhaft. Dies bedeutet, dass ihr beim Start des Containers immer wieder die Anpassungen vornehmen müsst. Daher habe ich mir ein Skript geschrieben. Dies zeige ich euch später in diesem Artikel.
Zuerst zeige ich euch hier das Ergebnis meiner Anpassungen. So könnte es später bei euch aussehen.
Diese Anleitung funktioniert nur 1:1, wenn ihr meine Jitsi Anleitung genutzt habt.
1. Jitsi Logo anpassen
Ihr könnt sehr einfach das Logo anpassen. Dazu müsst ihr lediglich die docker-compose Datei anpassen.
nano /opt/containers/jitsi/docker-compose.yml
Hier fügt ihr folgendes hinzu:
- ./anpassungen/watermark.png:/usr/share/jitsi-meet/images/watermark.png
So sollte es aussehen:
web: image: jitsi/web:latest restart: ${RESTART_POLICY} ... volumes: - ${CONFIG}/web:/config:Z - ${CONFIG}/transcripts:/usr/share/jitsi-meet/transcripts:Z - ./anpassungen/watermark.png:/usr/share/jitsi-meet/images/watermark.png
Nun müssen wir noch das Verzeichnis “anpassungen” anlegen und mit einer Datei befüllen.
mkdir -p /opt/containers/jitsi/anpassungen
Datei downloaden und umbenennen. Ich lade hier als Beispiel eine Grafik von Wikipedia
cd /opt/containers/jitsi/anpassungen wget https://upload.wikimedia.org/wikipedia/commons/thumb/5/52/Free_logo.svg/200px-Free_logo.svg.png mv 200px-Free_logo.svg.png watermark.png
Bei Version stable-5390-3 müsst ihr noch folgende 2 Zeilen Code ausführen. Innerhalb der einzelnen Versionen wurde nämlich die zu erwartende Datei von der Endung “png” auf “svg” geändert.
sed -i "s#DEFAULT_LOGO_URL: 'images/watermark.svg',#DEFAULT_LOGO_URL: 'images/watermark.png',#" ~/.jitsi-meet-cfg/web/interface_config.js sed -i "s#DEFAULT_WELCOME_PAGE_LOGO_URL: 'images/watermark.svg',#DEFAULT_WELCOME_PAGE_LOGO_URL: 'images/watermark.png',#" ~/.jitsi-meet-cfg/web/interface_config.js
Nachdem ihr nun den Container neu gestartet habt wird euer Logo angezeigt.
Bitte achtet hier auf eure Version
2. Anpassungen per Konfigurationsdatei (Version stable-5142-4)
Nun kommen wir zu Anpassungen, welche ihr per Skript erledigen könnt.
Diese Anpassungen habe ich vorgenommen:
- Disable Watermark: Deaktiviert das Wasserzeichen in den Video Konferenzen (NICHT auf der Startseite)
- Remove Blur menu entry: Entfernt die Einstellung mit dem “Blur” Hintergrund
- Disable measuring audio levels: Diese Funktion kontrolliert durchgehend das Audio Signal. Aktivieren spart CPU Performance, kann sich aber negativ auswirken. Jeder sollte hier ein Headset tragen.
- Disable generated room names: Hier werden auf der Startseite diese zufälligen Raumvorschläge deaktiviert
- Automatische Spracherkennung: Hier wird automatisch die Sprache des Benutzerinterfaces festgelegt
- Sprache festlegen: Hier wird die Sprache per Konfiguration festgelegt
- Login Namen erzwingen: Durch diese Einstellung wird zu Beginn jeder Konferenz der Benutzer aufgefordert einen Namen einzugeben
- PreJoin Page: Hier kann der Benutzer einen Namen eingeben sowie sein Lautsprecher / Kamera an/abschalten.
- Enable Layer Suspension: Optimierung um Bandbreite und CPU Last zu sparen
- Disable third party requests: Deaktiviert Verbindungen zu Gravatar.com
- Rename Local Display Name: Nennt sich selbst von “me” zu “Ich” um
- Deutschen Titel ändern: Hier kann man den Titel der deutschen Startseite ändern
- Deutschen Text ändern: Hier kann man den Infotext der deutschen Startseite ändern
- Logo URL anpassen: Hier kann man die URL des Logos oben Links anpassen
- Links zum Impressum aktivieren
Einige der Optionen habe ich mit “#” auskommentiert. Wenn ihr diese aktivieren wollt müsst ihr lediglich das “#” entfernen.
Zuerst erstellen wir uns ein neues Skript:
nano /opt/containers/jitsi/jitsi-start.sh
Inhalt:
#!/bin/bash # Jitsi starten docker-compose -f /opt/containers/jitsi/docker-compose.yml up -d # Kurz warten, bis der Container gestartet ist sleep 10 # Disable Watermark sed -i 's/SHOW_JITSI_WATERMARK: true/SHOW_JITSI_WATERMARK: false/' ~/.jitsi-meet-cfg/web/interface_config.js sed -i 's/SHOW_WATERMARK_FOR_GUESTS: true/SHOW_WATERMARK_FOR_GUESTS: false/' ~/.jitsi-meet-cfg/web/interface_config.js # Remove blur menu entry sed -i "s#'videobackgroundblur', ##" ~/.jitsi-meet-cfg/web/interface_config.js # Disable generated room names sed -i "s#GENERATE_ROOMNAMES_ON_WELCOME_PAGE: true,#GENERATE_ROOMNAMES_ON_WELCOME_PAGE: false,#" ~/.jitsi-meet-cfg/web/interface_config.js # Auto Language #sed -i 's/LANG_DETECTION: false/LANG_DETECTION: true/' ~/.jitsi-meet-cfg/web/interface_config.js # Sprache festlegen sed -i "s#// defaultLanguage: 'en'#defaultLanguage: 'de'#" ~/.jitsi-meet-cfg/web/config.js # Disable measuring audio levels # https://community.jitsi.org/t/performance-optimization-jitsi-with-separate-videobridges-rather-poor-quality/31699/9 #sed -i "s#// disableAudioLevels: false,#disableAudioLevels: true,#" ~/.jitsi-meet-cfg/web/config.js # Enable Login Name #sed -i "s#// requireDisplayName: true,#requireDisplayName: true,#" ~/.jitsi-meet-cfg/web/config.js #echo "config.requireDisplayName=true;" >> ~/.jitsi-meet-cfg/web/config.js # PreJoinPage enabled sed -i "s#// prejoinPageEnabled: false,#prejoinPageEnabled: true,#" ~/.jitsi-meet-cfg/web/config.js echo "config.prejoinPageEnabled=true;" >> ~/.jitsi-meet-cfg/web/config.js # Enable Layer Suspension # https://jitsi.org/blog/new-off-stage-layer-suppression-feature/ sed -i 's#// enableLayerSuspension: false,#enableLayerSuspension: true,#' ~/.jitsi-meet-cfg/web/config.js # Disable third party requests (gravatar.com) sed -i "s#// disableThirdPartyRequests: false,#disableThirdPartyRequests: true,#" ~/.jitsi-meet-cfg/web/config.js # Rename Local Display Name sed -i "s#DEFAULT_LOCAL_DISPLAY_NAME: 'me',#DEFAULT_LOCAL_DISPLAY_NAME: 'Ich',#" ~/.jitsi-meet-cfg/web/interface_config.js # Set German Title Line docker exec jitsi_web_1 sed -i 's/"title": "Sichere, voll funktionale und komplett kostenlose Videokonferenzen"/"title": "Videokonferenzen goNeuland.de"/' /usr/share/jitsi-meet/lang/main-de.json # Set German Text docker exec jitsi_web_1 sed -i 's/"appDescription": ".*"/"appDescription": "Viel Spaß hier :)"/' /usr/share/jitsi-meet/lang/main-de.json # Change Logo URL sed -i "s#JITSI_WATERMARK_LINK: 'https://jitsi.org',#JITSI_WATERMARK_LINK: 'https://euredomain.de',#" ~/.jitsi-meet-cfg/web/interface_config.js # Links am unteren Bildschirm aktivieren # dazu muesst ihr Kapitel 3 der Anleitung noch beachten sed -i "s#DISPLAY_WELCOME_PAGE_TOOLBAR_ADDITIONAL_CONTENT: false,#DISPLAY_WELCOME_PAGE_TOOLBAR_ADDITIONAL_CONTENT: true,#" ~/.jitsi-meet-cfg/web/interface_config.js
2.1 Links zum Impressum / Statistik hinzufügen
Im unteren Bereich der Webseite habt ihr die Möglichkeit Links zum Impressum oder der Serverstatistik hinzuzufügen. Eine Anleitung zur Serverstatistik mit Grafana habe ich hier erstellt.
Dazu müsst ihr in der Konfiguration
"DISPLAY_WELCOME_PAGE_TOOLBAR_ADDITIONAL_CONTENT: true"
gesetzt haben.
Nun müsst ihr die docker-compose Datei noch anpassen.
nano /opt/containers/jitsi/docker-compose.yml
Fügt folgende Zeile hinzu:
- ./anpassungen/welcomePageAdditionalContent.html:/usr/share/jitsi-meet/static/welcomePageAdditionalContent.html
So sollte es aussehen:
web: image: jitsi/web:latest restart: ${RESTART_POLICY} volumes: ... - ${CONFIG}/web:/config:Z - ${CONFIG}/transcripts:/usr/share/jitsi-meet/transcripts:Z - ./anpassungen/welcomePageAdditionalContent.html:/usr/share/jitsi-meet/static/welcomePageAdditionalContent.html
Nun müsst ihr diese Datei noch erstellen.
mkdir -p /opt/containers/jitsi/anpassungen nano /opt/containers/jitsi/anpassungen/welcomePageAdditionalContent.html
Inhalt:
<template id = "welcome-page-additional-content-template"> <div style="text-align: center; font-size: 16px; margin: 20px 0; margin-top: 10px; z-index: 900; position: relative; color: #fff;"> Eure Firma | <a href="https://test.webrtc.org" style="color: #fff; text-decoration: underline;">Browser Test</a> | <a href="https://example.com/datenschutz" style="color: #fff; text-decoration: underline;">Datenschutz</a> | <a href=" https://example.com/impressum" style="color: #fff; text-decoration: underline;">Impressum</a> </div> </template>
3. Anpassungen per Konfigurationsdatei (Version stable-5390-3 bis stable-5765-1)
Ich habe die aktuelle Version stable-5765-1 (02.05.2021) mit dieser Konfiguration zum laufen bekommen. Es kann sein, dass spätere Versionen auch noch so funktionieren.
Nun kommen wir zu Anpassungen, welche ihr per Skript erledigen könnt.
Diese Anpassungen habe ich vorgenommen:
- Lobby aktivieren
- Disable Watermark: Deaktiviert das Wasserzeichen in den Video Konferenzen (NICHT auf der Startseite)
- Remove Blur menu entry: Entfernt die Einstellung mit dem “Blur” Hintergrund
- Disable measuring audio levels: Diese Funktion kontrolliert durchgehend das Audio Signal. Aktivieren spart CPU Performance, kann sich aber negativ auswirken. Jeder sollte hier ein Headset tragen.
- Disable generated room names: Hier werden auf der Startseite diese zufälligen Raumvorschläge deaktiviert
- Sprache festlegen: Hier wird die Sprache per Konfiguration festgelegt
- Login Namen erzwingen: Durch diese Einstellung wird zu Beginn jeder Konferenz der Benutzer aufgefordert einen Namen einzugeben
- PreJoin Page: Hier kann der Benutzer einen Namen eingeben sowie sein Lautsprecher / Kamera an/abschalten.
- Enable Layer Suspension: Optimierung um Bandbreite und CPU Last zu sparen
- Disable third party requests: Deaktiviert Verbindungen zu Gravatar.com
- Rename Local Display Name: Nennt sich selbst von “me” zu “Ich” um
- Deutschen Titel ändern: Hier kann man den Titel der deutschen Startseite ändern
- Deutschen Text ändern: Hier kann man den Infotext der deutschen Startseite ändern
- Logo URL anpassen: Hier kann man die URL des Logos oben Links anpassen
- Links zum Impressum aktivieren
- Standard Nutzername umbenennen
- Entfernt die Werbung für die Apps im unteren Bereich
- Sprach Erkennung deaktivieren
- Name in der Browserleiste
Einige der Optionen habe ich mit “#” auskommentiert. Wenn ihr diese aktivieren wollt müsst ihr lediglich das “#” entfernen.
Zuerst erstellen wir uns ein neues Skript:
nano /opt/containers/jitsi/jitsi-start.sh
Inhalt:
#!/bin/bash # Lobby aktivieren sed -i "s#\#ENABLE_LOBBY=1#ENABLE_LOBBY=1#" .env # Jitsi starten docker-compose -f /opt/containers/jitsi/docker-compose.yml up -d # Kurz warten, bis der Container gestartet ist sleep 10 # Disable Watermark sed -i 's/SHOW_JITSI_WATERMARK: true/SHOW_JITSI_WATERMARK: false/' ~/.jitsi-meet-cfg/web/interface_config.js sed -i 's/SHOW_WATERMARK_FOR_GUESTS: true/SHOW_WATERMARK_FOR_GUESTS: false/' ~/.jitsi-meet-cfg/web/interface_config.js # Anpassung, damit euer Logo angezeigt wird. Siehe Schritt 1 der Anleitung sed -i "s#DEFAULT_LOGO_URL: 'images/watermark.svg',#DEFAULT_LOGO_URL: 'images/watermark.png',#" ~/.jitsi-meet-cfg/web/interface_config.js sed -i "s#DEFAULT_WELCOME_PAGE_LOGO_URL: 'images/watermark.svg',#DEFAULT_WELCOME_PAGE_LOGO_URL: 'images/watermark.png',#" ~/.jitsi-meet-cfg/web/interface_config.js # Remove blur menu entry sed -i "s#'videobackgroundblur', ##" ~/.jitsi-meet-cfg/web/interface_config.js # Disable generated room names sed -i "s#GENERATE_ROOMNAMES_ON_WELCOME_PAGE: true,#GENERATE_ROOMNAMES_ON_WELCOME_PAGE: false,#" ~/.jitsi-meet-cfg/web/interface_config.js # Standard Sprache festlegen sed -i "s#// defaultLanguage: 'en'#defaultLanguage: 'de'#" ~/.jitsi-meet-cfg/web/config.js # Disable measuring audio levels # https://community.jitsi.org/t/performance-optimization-jitsi-with-separate-videobridges-rather-poor-quality/31699/9 #sed -i "s#// disableAudioLevels: false,#disableAudioLevels: true,#" ~/.jitsi-meet-cfg/web/config.js # Enable Login Name #sed -i "s#// requireDisplayName: true,#requireDisplayName: true,#" ~/.jitsi-meet-cfg/web/config.js #echo "config.requireDisplayName=true;" >> ~/.jitsi-meet-cfg/web/config.js # PreJoinPage enabled sed -i "s#// prejoinPageEnabled: false,#prejoinPageEnabled: true,#" ~/.jitsi-meet-cfg/web/config.js echo "config.prejoinPageEnabled=true;" >> ~/.jitsi-meet-cfg/web/config.js # Enable Layer Suspension # https://jitsi.org/blog/new-off-stage-layer-suppression-feature/ sed -i 's#// enableLayerSuspension: false,#enableLayerSuspension: true,#' ~/.jitsi-meet-cfg/web/config.js # Disable third party requests (gravatar.com) sed -i "s#// disableThirdPartyRequests: false,#disableThirdPartyRequests: true,#" ~/.jitsi-meet-cfg/web/config.js # Rename Local Display Name sed -i "s#DEFAULT_LOCAL_DISPLAY_NAME: 'me',#DEFAULT_LOCAL_DISPLAY_NAME: 'Ich',#" ~/.jitsi-meet-cfg/web/interface_config.js # Change Logo URL sed -i "s#JITSI_WATERMARK_LINK: 'https://jitsi.org',#JITSI_WATERMARK_LINK: 'https://euredomain.de',#" ~/.jitsi-meet-cfg/web/interface_config.js # Links am unteren Bildschirm aktivieren # dazu muesst ihr Kapitel 3.1 der Anleitung noch beachten sed -i "s#DISPLAY_WELCOME_PAGE_CONTENT: false,#DISPLAY_WELCOME_PAGE_CONTENT: true,#" ~/.jitsi-meet-cfg/web/interface_config.js # Umbenennen von unbekannten Nutzern sed -i "s#DEFAULT_REMOTE_DISPLAY_NAME: 'Fellow Jitster',#DEFAULT_REMOTE_DISPLAY_NAME: 'Unbekannter Nutzer',#" ~/.jitsi-meet-cfg/web/interface_config.js # entfernt die Werbung fuer die Apps am unteren Rand #sed -i "s#DISPLAY_WELCOME_FOOTER: true,#DISPLAY_WELCOME_FOOTER: false,#" ~/.jitsi-meet-cfg/web/interface_config.js # deaktiviert die Spracherkennung #sed -i "s#LANG_DETECTION: true,#LANG_DETECTION: false,#" ~/.jitsi-meet-cfg/web/interface_config.js # anpassen des Namens in der Browserleiste sed -i "s#APP_NAME: 'Jitsi Meet',#APP_NAME: 'Eure Webseite',#" ~/.jitsi-meet-cfg/web/interface_config.js ### Anpassungen für stable-5390-3 ### # Set German Title Line #docker exec jitsi_web_1 sed -i 's/"title": "Sichere, voll funktionale und komplett kostenlose Videokonferenzen"/"headerTitle": "Videokonferenzen euredomain.de"/' /usr/share/jitsi-meet/lang/main-de.json # Set German Text #docker exec jitsi_web_1 sed -i 's/"appDescription": ".*"/"headerSubtitle": "Viel Spaß hier :)"/' /usr/share/jitsi-meet/lang/main-de.json ### Anpassungen für stable-5765-1 ### # Set German Title Line docker exec jitsi_web_1 sed -i 's/"headerTitle": "Jitsi Meet"/"headerTitle": "goNeuland.de Videokonferenzen"/' /usr/share/jitsi-meet/lang/main-de.json # Set German Text docker exec jitsi_web_1 sed -i 's/"headerSubtitle": "Sichere und hochqualitative Meetings"/"headerSubtitle": "kostenlose Videokonferenzen für alle"/' /usr/share/jitsi-meet/lang/main-de.json
3.1 Links zum Impressum / Statistik hinzufügen
Im unteren Bereich der Webseite habt ihr die Möglichkeit Links zum Impressum oder der Serverstatistik hinzuzufügen. Eine Anleitung zur Serverstatistik mit Grafana habe ich hier erstellt.
Dazu müsst ihr in der Konfiguration
"DISPLAY_WELCOME_PAGE_CONTENT: true"
gesetzt haben.
Nun müsst ihr die docker-compose Datei noch anpassen.
nano /opt/containers/jitsi/docker-compose.yml
Fügt folgende Zeile hinzu:
- ./anpassungen/welcomePageAdditionalContent.html:/usr/share/jitsi-meet/static/welcomePageAdditionalContent.html
So sollte es aussehen:
web: image: jitsi/web:latest restart: ${RESTART_POLICY} volumes: ... - ${CONFIG}/web:/config:Z - ${CONFIG}/transcripts:/usr/share/jitsi-meet/transcripts:Z - ./anpassungen/welcomePageAdditionalContent.html:/usr/share/jitsi-meet/static/welcomePageAdditionalContent.html
Nun müsst ihr diese Datei noch erstellen.
mkdir -p /opt/containers/jitsi/anpassungen nano /opt/containers/jitsi/anpassungen/welcomePageAdditionalContent.html
Inhalt:
<template id = "welcome-page-additional-content-template"> <div style="text-align: center; font-size: 16px; margin: 20px 0; margin-top: 10px; z-index: 900; position: relative; color: #000;"> Eure Firma | <a href="https://test.webrtc.org" style="color: #000; text-decoration: underline;">Browser Test</a> | <a href="https://example.com/datenschutz" style="color: #000; text-decoration: underline;">Datenschutz</a> | <a href=" https://example.com/impressum" style="color: #000; text-decoration: underline;">Impressum</a> </div> </template>
4. Dateirechte anpassen
Nun müssen wir die eben erstelle Konfigurationsdatei noch ausführbar machen.
chmod +x /opt/containers/jitsi/jitsi-start.sh
5. Jitsi mit geänderter Konfiguration starten
Nun können wir Jitsi endlich starten und uns die Änderungen anschauen.
/opt/containers/jitsi/./jitsi-start.sh
6. Quellen
https://scheible.it/datenschutzfreundliche-konfiguration-jitsi-meet/
https://adminforge.de/linux-allgemein/jitsi-meet-docker-instanz-anpassen/
https://scheible.it/jitsi-meet-ressourcensparend/
Hi, sorry vielleicht eine blöde Frage. Ich nutze zur grafischen Administration Portainer, Jitsi habe ich anhand deiner Installationsanleitung hier in der Community installiert über Portainer. Läuft soweit. Kann ich das Script so einbinden, dass es beim automatischen Aktualisieren der Container (z.B. mit Watchdog) nach der Aktualisierung automatisch ausgeführt wird?
VG Frank
Hey,
ich versuche den Hintergrund von Jitsi zu Ändern. Dieser gefällt mir nicht.
Bei der recherche bin ich hier drauf gestoßen, aber ich bekomme es nicht zum Laufen. Kannst du mir da helfen?
Quelle: https://github.com/jitsi/jitsi-meet/issues/8183
docker-compose.yaml file
set DYNAMIC_BRANDING_URL: “https://raw.githubusercontent.com/prayagsingh/mockserver/main/bloquelabs/jitsibrand.json”
{
“inviteDomain”:”test.example.com”,
“backgroundColor”:”#fff”,
“backgroundImageUrl”:”https://i2.wp.com/www.freeconference.com/wp-content/uploads/2017/11/video-template-2635532_640-2.jpg”,
“logoClickUrl”:”https://www.bloquelabs.com”,
“logoImageUrl”:”https://www.google.com/images/branding/googlelogo/2x/googlelogo_color_92x30dp.png”
}
Zwischenantwort an mich selbst:
Die Jitsi-web version findet sich durch Anmelden im Container per
> docker exec -it jitsi_web_1 bash
und Abfrage der Jitsi-version z.B. per
> dpkg -l | grep jitsi
Nutzt hier aber nix, da die Version vom Docker Container gemeint ist, wie sie hier zu finden ist:
https://github.com/jitsi/docker-jitsi-meet
Damit lässt sich anhand des Installationsdatums abschätzen, welche Version man wohl laufen hat.
Eine Abfrage von
> docker inspect jitsi_web_1
liefert zwar allerhand Informationen, aber nicht die Version des Containers. Suche weiter.
Frage – wie finde ich heraus, welche Jitsi Version ich installiert habe?