app-icon

Duskfare

Duskfare

Duskfare

Video Conferencing: Host your own video conferencing server with Jitsi


Video conferencing can get pretty expensive when you use an external service such as Zoom. For companies that do not want to bother with the infrastructure setup, it is a small price to pay to get great quality for video conferences.

If you're a developer or familiar with setting up your own servers, it seems unnecessary to bear these costs. A great free open sourced tool for video conferencing called Jitsi allows you to configure your own servers and scale them up as necessary!

If you're looking to make a quick call without hosting your own server, you can create a quick call here!

In this guide, we cover how to set up your own instance of Jitsi with docker and Let's Encrypt.

Getting Started

  1. Create a Ubuntu server instance using docker
  2. Install docker and docker compose using the command
sudo apt update; # initial setup, update packages
sudo apt install apt-transport-https ca-certificates curl software-properties-common; # allow installation of packages over https
sudo apt install docker.io docker-compose
Language: shell
  1. Clone Jitsi (Docker) using the command
git clone https://github.com/jitsi/docker-jitsi-meet && cd docker-jitsi-meet
Language: shell
  1. Copy the sample .env file
cp env.example .env
Language: shell
  1. Generate secure passwords for your app
./gen-passwords.sh
Language: shell
  1. Create the configuration directories for your instance
mkdir -p ~/.jitsi-meet-cfg/{web/letsencrypt,transcripts,prosody,jicofo,jvb,jigasi,jibri}
Language: shell
  1. Open the .env file and set the following properties
# Enable Let's Encrypt certificate generation
ENABLE_LETSENCRYPT=1
# Domain for which to generate the certificate
LETSENCRYPT_DOMAIN=meet.yourdomain.com
# E-Mail for receiving important account notifications (mandatory)
[email protected]
# Exposed HTTP port
HTTP_PORT=80
# Exposed HTTPS port
HTTPS_PORT=443
Language: .env
  1. Add your server's IP address to your DNS provider's list for your domain. This will allow the automated domain verification to be completed via let's encrypt.

  2. Run the setup using docker-compose

docker-compose up -d
Language: shell
  1. If there has been any configuration error in the earlier steps, you will need to reset the state and run docker-compose up -d again.
rm -rf ~/.jitsi-meet-cfg/ && docker-compose up -d
Language: shell

Finishing up

You can perform some additional configuration such as removing the watermark or changing the page title of the conference link by editing the configuration at ~/.jitsi-meet-cfg/web/interface_config.js.

That's it! Happy conferencing! :)

Created at: Apr 18 - 05:00 AM by Conrad Koh