Skip to content

Comment on Jitsi Architecture – legacy desktop application (2011)parent

Comments

Hi, this is really interesting for me. Could you share a bit more details of your setup?

I am also doing this, so I'll take the liberty of answering. There's a turnkey docker which should take a few minutes to install:

https://github.com/jitsi/docker-jitsi-meet

Put nginx in front of it with Let's Encrypt and it shouldn't take more than half an hour to set up. After that you basically get a clone of meet.jit.si.

I'm using it with the low level JS library in order to build a product that contains video chat. There was a bit more messing about for me, but only a bit.

nginx and letsencrypt are already included in the docker image - just uncomment the letsencrypt variables in the .env config file :) hope that saves you some time.

Ah of course, I forgot that was included. I couldn't use that myself due to CORS and a few other things but if you just want Jitsi in a box it would work for sure.

I purchased a basic vps cloud instance from cloud.hetzner.com for €2.49 per month. 20TB of traffic a month is included, which should be sufficient. Hetzner has good network connections for European users.

Installation on Ubuntu is a breeze using an install script. It's important to complete the installation with some letsencrypt SSL certs and then you're good to go.

I created a subdomain (new A record pointing at ip address of my Jitsi server) on my business domain to make it easy for family members to go to the server themselves and create their own meeting rooms.

TIL Hetzner offers a ridiculous amount of monthly traffic. Is there anything even remotely this good hosted in the US? DigitalOcean only gives 1TB/mo per 5USD instance.

There are also .deb Packages for Debian/Ubuntu based Linus distributions. Setup takes 10 minutes via package Manager.

Can confirm, 10 minutes is all it takes to go through the steps in this quick install guide on a Debian system: https://github.com/jitsi/jitsi-meet/blob/master/doc/quick-in...

I also set up jitsi, in my case on an ubuntu server 18.04 VM on my desktop [0]. Took about 10 minutes as well to follow that guide.

In addition, I wanted to expose jitsi to the internet but not allow random people to create or join rooms. I basically followed the first part of this[1], which sets up username/password pair that you're prompted for each time you create/join a room.

edit this file:

    /etc/prosody/conf.avail/HOSTNAME.com.cfg.lua
Look for the first `authentication` line for HOSTNAME.com and change it to `internal_plain`
    authentication = "internal_plain"
Add a username/password
    prosodyctl register 'username' 'HOSTNAME.com' 'password'
then restart prosody (or just reboot)

This is enough to make a password prompt pop up every time someone creates or joins a room, and it autofills nicely after you enter it the first time on firefox/chrome/android app. If you follow the rest of the guide you can set up a second domain people can use to join rooms without a password prompt.

This makes me feel a bit better about exposing this to the internet. Not sure if there's other havoc someone could cause though.

[0] thankfully I have fast internet with a public IP

[1] https://github.com/jitsi/jicofo#secure-domain

Nice! May I ask what's the added load of running Prosody?

(as far as I can tell, I don't really understand what Prodosy is)

Prosody is always running, whether or not you have it configured with a password. So I'd guess zero extra load.

Additionally, without a password your server is wide open, letting anyone start their own conference calls. I would guess that load could be significantly reduced by stopping unknown people from connecting.

(I still don't understand jitsi meet's architecture well though, so there could be ways around the password)

AboutSource Built by g1lg1l

Hackerly is an independent reader for Hacker News, built on the public HN API. Not affiliated with Y Combinator.