Deployment guide

Host Jitsi on your own VPS

Deploy on a VPS Cloud →

Self-hosting7 min read

Host Jitsi on your own VPS

Jitsi Meet is an open source video conferencing solution that works directly in the browser, with no installation on the participant's side. Self-hosting it on a VPS gives you unlimited rooms, with no time limit and no data collection. Here is how to deploy it with Docker and SSL, and how to size your server properly.

Why self-host Jitsi on a VPS

Consumer video conferencing services impose time limits, participant quotas and keep your recordings on their servers. Jitsi Meet, self-hosted, removes these constraints: unlimited rooms, unlimited duration, no account required to join a meeting, and the video stream that stays on your infrastructure. This is particularly relevant for an organization concerned about the confidentiality of its meetings, or to embed video calling in its own site (Jitsi offers an iframe API). Be careful, however: video conferencing is one of the most network-hungry use cases; it is bandwidth rather than CPU that sizes your VPS.

Concrete benefits of a self-hosted Jitsi

  • Meetings with no time limit and no cap on the number of rooms, unlike free consumer offerings.
  • No account required: a simple link is enough to join a room.
  • iframe API to embed video calling directly in your application or your site.
  • Transport encryption and full control of any recordings.
  • Complete customization of the interface and the meetings' domain name.
  • No telemetry sent to a third party: streams stay on your VPS.

Hardware and software prerequisites

Jitsi is limited less by CPU than by bandwidth and network ports. For small meetings (up to 15-20 participants), a VPS with 2 to 4 vCPU and 4 GB of RAM is suitable, but it is outbound bandwidth that matters: plan for a generous, uncapped connection, because each relayed participant multiplies the throughput. UDP port 10000 must be open on the firewall and the public IP — it is through it that the video (JVB) transits. You need Docker and Compose, a meet.yourdomain.com domain name with an A record, and ideally a dedicated, stable public IP.

Deploy Jitsi Meet with Docker and SSL

01

Fetch docker-jitsi-meet

Clone the official docker-jitsi-meet repository, copy env.example to .env, then run the gen-passwords.sh script that generates all the internal secrets of the components (Prosody, Jicofo, JVB).

02

Configure the domain and the network

In .env, set PUBLIC_URL=https://meet.yourdomain.com and DOCKER_HOST_ADDRESS with the VPS public IP. This is crucial: without the correct address, the JVB video bridge will not know which IP to announce to participants.

03

Open UDP port 10000

Allow UDP port 10000 in the VPS firewall (ufw allow 10000/udp) and at your provider's level. It is through this port that the video media flows; if it is closed, participants see each other but with no stream.

04

Launch the stack

Run docker compose up -d. The web, prosody, jicofo and jvb containers start. Follow docker compose logs -f jvb to confirm that the bridge has registered correctly.

05

Provision the SSL certificate

Jitsi can generate Let's Encrypt automatically: set ENABLE_LETSENCRYPT=1 and LETSENCRYPT_DOMAIN/LETSENCRYPT_EMAIL in .env. First check that the DNS of meet.yourdomain.com indeed points to the VPS, otherwise issuance will fail.

06

Secure access to rooms

By default anyone can create a room. Enable authentication (AUTH_TYPE=internal) to require an account on the organizer's side while letting guests join freely. Create host accounts with prosodyctl register.

Jitsi works in SFU mode: the video bridge (JVB) relays each stream, so outbound bandwidth climbs quickly with the number of participants. For large meetings, enable last-active-video mode and client-side simulcast, and monitor the JVB's network load rather than the CPU. Beyond a few dozen simultaneous participants, deploy several JVB instances on separate VPSes behind a single Jicofo: this is how Jitsi scales horizontally.

Launch your Jitsi server on a ServOrbit Cloud VPS

A Cloud VPS with a dedicated public IP, generous bandwidth and Docker preconfigured lets you deploy Jitsi Meet and its video bridge with no meeting limit. Your video calls stay private.

Need help?

Browse our help center and FAQ, or write to our team — support in French, English and Arabic.