npm install
-
Add a public openid-connect client in your keycloak realm
-
Download the
keycloak.jsonfile for your client and put it in the config directory. -
Allow this app from keycloak (
jitsi-keycloakrunning on https://auth.meet.example.com):
-
If you want to have an avatar displayed in jitsi you can add an avatar custom attribute in keycloak to your desired users:
- Set
ENABLE_AUTH=1,AUTH_TYPE=jwtandJWT_APP_ID=jitsiin your jitsi environment - Set
JWT_APP_SECRETto a random string (e.g.node -e "console.log(require('crypto').randomBytes(24).toString('base64'));") - To enable an automatic redirect from jitsi to login set the url of this container
TOKEN_AUTH_URL=https://auth.example.com/{room} - To enable the guest lobby feature for every new room add
XMPP_MODULES=muc_lobby_rooms,persistent_lobbyandXMPP_MUC_MODULES=lobby_autostart,token_lobby_bypass. This will enable these two plugins: https://github.com/jitsi-contrib/prosody-plugins/tree/main/lobby_autostart and https://github.com/jitsi-contrib/prosody-plugins/tree/main/token_lobby_bypass. Thelobby_bypassattribute is automatically enabled for every logged in user.
JITSI_SECRETwith the shared secret from jitsiJWT_APP_SECRET.DEFAULT_ROOMwith a default room name e.g.meetingJITSI_URLwith the url of your jitsi server e.g.https://meet.example.com
ALLOWED_SUBwith the allowed sub, the default is*ALLOWED_ROOMwith the allowed room, the default is*
npm run dev
docker build -t jitsi-keycloak .
docker run -it --rm -p 3000:3000 -v $(pwd)/config:/config jitsi-keycloak
docker-compose up -d