In these days of physical isolation I wanted to spend my free time to check and implement a videoconferencing solution for my private use.

After googling I found Jitsi and in few minutes I was able to setup a test environment on my computer using docker.

I wanted to implement this on my Synology NAS (DS918) using docker containers. All explanations below are coming from the Jitsi github page, with a little customization to fit my needs.

I assume that you are familiar with docker, SSH access & certificate installation/request.

You need to download the file https://github.com/jitsi/docker-jitsi-meet/archive/master.zip

Upload and extract on your NAS the content of the zip file. In my installation it is the folder /volume1/docker

Open an SSH console to your NAS

Go to the folder you just created it will be something like:

cd /volume1/docker/docker-jitsi-meet-master

Copy the environment file:

cp env.example .env

Create a folder where to store the configuration files:

mkdir /volume1/docker/docker-jitsi-config/

mkdir -p /volume1/docker/docker-jitsi-config/{web/letsencrypt,transcripts,prosody,jicofo,jvb,jigasi,jibri}

Edit the .env file and change the line CONFIG=~/.jitsi-meet-cfg to CONFIG=/volume1/docker/docker-jitsi-config

Enable authentication, guest access and internal authentication:

ENABLE_AUTH=1

ENABLE_GUESTS=1

AUTH_TYPE=internal

Customize the lines related to your environment and the docker host IP (your NAS interface). I use afraid DNS route my personal domain to my NAS public IP.

PUBLIC_URL=https://meet.mydomain.com

DOCKER_HOST_ADDRESS=192.168.X.X

You can now create and run the docker containers:

docker-compose up -d

To protect access to your meeting solution connect to the prosody container:

docker exec -it docker-jitsi-meet-master_prosody_1 /bin/bash

and create register your user:

prosodyctl --config /config/prosody.cfg.lua register TheDesiredUsername meet.jitsi TheDesiredPassword

You can use the Synology NAS reverse proxy to redirect your domain HTTPS to your container on port 8443 (Application Portal > Reverse Proxy > Create). This is mandatory to have a fully working solution. (avoiding problem with video content)

You need also to generate a certificate and install it on your NAS (Security > Certificates > Create)

I use a letsencrypt certificate but you can also import one.

Configure the certificate to be presented for meet.mydomain.com (Security > Certificates > Configure)

After completing these steps you should have a working private videoconferencing solution, with authenticated host and guest access activated on your Synology NAS.