The official Jitsi Docker allows for easy installation on an empty VM without much difficulty. However, installing Jitsi docker on a VM managed by HestiaCP, which handles multiple (sub)domains, is not straightforward.
After spending half a week trying and reading many frustrated accounts of failed attempts, I finally succeeded. Here is what I describe below.
Spoiler: It is essentially the same as the official guide, but the key lies in properly defining the ports and the NGINX reverse proxy.
Edited: thanks to some comments below, i had modified my installation and the published guide to use a NGINX template instead of modify directly the nginx.ssl.conf of the subdomain. Using a template, we preserve this customization when we upgrade HestiCP in the future!
I’ve published a step by step install guide in my blog:
In fact, the installation has been a great success.
In this VM with 2 CPU cores and 4GB RAM, I have a couple of CMS instances on two web domains, Jitsi over Docker on another subdomain, and Flowise (for AI workflows and chatbots) over Docker on yet another subdomain.
Certainly, we can have more than one Docker container installed on the same HestiaCP machine, each on different subdomains, all created and managed from HestiaCP.
For Docker, you obviously need to connect via SSH and install the required containers.
You mention edit file /etc/nginx/conf.d/domains/live.mydomain.com.ssl.conf - wouldn’t it be better if you add new tpl’s files and assign that proxy template to the jitsi sub domain in hestia?
I have jitsi running without docker on a Hestia managed VM. this is also working without problems.
As already has been mentioned it just comes down to make sure which ports you use, may it be the individual jitsi services or just the docker containers.
once this is clear and not conflicting one only needs a small nginx template for the proxying.
nice short howto though. as you already wrote, similar can be done for nearly all dockerized apps you can think of. Hestia will only act as proxy and can take care of ssl certificates and such.
PS: and if you make sure your app/install files/docker mounts are within the users home (the one owning the domain), Hestia also backups these files
Yes, I was aware that the correct and permanent way to do it is with an NGINX template, but I got so exhausted from trying to make it work that I left setting it up with a template for last. Thanks for reminding me!
In fact, I have already modified my installation and updated the guide accordingly. I also realize that I forgot to mention the ports that need to be opened in the firewall… Tomorrow!!! haha