Jitsi Meet
NOTE: this will build the applications required for a jitsi-meet server on Alpine Linux. Prosody (apk) plus videobridge and jicofo using latest 'stable' on jitsi GH repo. Tested on 'edge', should work on 3.12 (not tested)
NOTE TODO: I will return and update this page with config files and rc scripts. But it's similar to the Debian config. Also TODO nginx reverse proxy / bosh config.
Prosody
# apk add prosody
edit /etc/prosody/prosody.cfg.lua
generate certs: Edit /etc/prosody/certs/openssl.cnf
[FQDN] means www.example.com
# cd /etc/prosody/certs # make [FQDN].cnf
edit file and make sure everything is correct
# make [FQDN].key
for self-signed certificate:
# make [FQDN].crt
or, for signing request:
# make [FQDN].csr
NOTE: repeat cert process for: auth.[FQDN] (ie, auth.www.example.com)
If you self-signed the cert, put it in the certs folder so it will be trusted on the local machine.
# ln -sf /etc/prosody/certs/auth.[FQDN] /usr/local/share/ca-certificates/ # update-ca-certificates -f
# prosodyctl start
# prosodyctl register focus auth.[FQDN] YOURSECRET3
(YOURSECRET3 is from cfg file /etc/prosody/prosody.cfg.lua)
# prosodyctl restart
Java/Maven setup
Maven is used to build videobridge and jicofo. Shell scripts included in software use bash. Jitsi uses jdk8, so should probably stick with that version. If you get fancy and use a newer jdk it might not work.
# apk add openjdk8 # apk add maven # apk add bash # apk add bash-completion # sync
Videobridge
# wget https://github.com/jitsi/jitsi-videobridge/archive/stable/jitsi-meet_4627.tar.gz # tar xf jitsi-meet_4627.tar.gz # cd jitsi-videobridge-stable-jitsi-meet_4627 # mvn -PbuildFatJar -DskipTests -Dassembly.skipAssembly=false package
The first time you build it will download the m2 (maven) components, so it will take a while. Output after build should look like this:
[INFO] ------------------------------------------------------------------------ [INFO] BUILD SUCCESS [INFO] ------------------------------------------------------------------------ [INFO] Total time: 42.191 s [INFO] Finished at: 2020-07-14T04:07:40Z [INFO] ------------------------------------------------------------------------
Now create the users and install the software.
# cd target # adduser -h /var/lib/jitsi -s /bin/bash -D jitsi # adduser -h /var/lib/jvb -s /bin/bash -D jvb # adduser jvb jitsi # mkdir /etc/jitsi # chown jitsi:jitsi /etc/jitsi # mkdir /etc/jitsi/videobridge # chown -R jvb:jitsi /etc/jitsi/videobridge # unzip jitsi-videobridge-2.1-SNAPSHOT-archive.zip # cp -a jitsi-videobridge-2.1-SNAPSHOT/* /var/lib/jvb/
Jicofo
The download archive file from GH is the same name as videobridge, so we can put the new build in a separate directory.
# mkdir jicofo # cd jicofo # wget https://github.com/jitsi/jicofo/archive/stable/jitsi-meet_4627.tar.gz # tar xf # cd jicofo-stable-jitsi-meet_4627 # mvn -DskipTests -Dassembly.skipAssembly=false package
You should get output like this:
[INFO] ------------------------------------------------------------------------ [INFO] BUILD SUCCESS [INFO] ------------------------------------------------------------------------ [INFO] Total time: 42.191 s [INFO] Finished at: 2020-07-14T04:07:40Z [INFO] ------------------------------------------------------------------------
# unzip jicofo-1.1-SNAPSHOT-archive.zip