Razno

Kako instalirati Jitsi Meet pomoću Docker-a na Ubuntu 24.04

ilustracija i naslov: Kako instalirati Jitsi Meet na VPS server

Jitsi Meet je aplikacija/softver za video-konferencije otvorenog koda zasnovana na WebRTC tehnologiji. Omogućava organizovanje višekorisničkih video sastanaka kojima možete pristupiti direktno iz internet pregledača, uz funkcionalnosti uporedive sa Zoom-om. Glavna prednost Jitsi-ja je što sav saobraćaj prolazi isključivo kroz vaš VPS server, čime zadržavate potpunu kontrolu nad privatnošću. Zahvaljujući TLS enkripciji (end-to-end), niko ne može prisluškivati vaše razgovore, pa poverljive informacije ostaju samo vaše.

U ovom uputstvu ćemo pokazati kako možete instalirati i podesiti Jitsi Meet na vašem VPS serveru. Podrazumevana Jitsi konfiguracija dozvoljava svakome ko može da pristupi serveru da kreira novu konferencijsku sobu, što nije idealno za javno dostupan server. Zato ćemo pokazati kako možete podesiti da samo registrovani korisnici mogu da kreiraju nove sobe, dok će se drugi moći priključiti ako imaju jedinstvenu adresu i opcionu lozinku.

Kako instalirati Jitsi Meet na VPS server

Za početak je potrebno da pristupite vašem serveru putem SSH, a nakon toga je potrebno da pokrenete određene komande ispod.

Prvo je potrebno proveriti da li postoje dostupna ažuriranja za vaš sistem, tu će nam pomoći komanda:

apt update -y

Nako što su programi i sistem ažurirani, možete nastaviti dalje.

Izabrali smo najlakši način instalacije Jitsi Meet-a na VPS server, a to je putem Docker-a, kako je potrebno preuzeti i pokrenuti Jitsi u kontejneru.

Da biste instalirali Docker i Docker Compose na serveru, pokrenite sledeće komande:

curl -fsSL https://get.docker.com | sh

Zatim za instalaciju Docker Compose pokrenite komandu:

apt install docker-compose -y

Sada kada ste instalirali Docker i Docker Compose, potrebno je da preuzmete Jitsi Meet datoteke za instalaciju i kreirate direktorijum, te instalirati Jitsi Meet, to možete uraditi sledećim komandama:

mkdir -p docker/jitsi
cd docker/jitsi
wget $(curl -s https://api.github.com/repos/jitsi/docker-jitsi-meet/releases/latest | grep 'zip' | cut -d\" -f4)
if [ -z $(which unzip) ]; then apt install unzip;  fi 
unzip ./stable-*
mv jitsi-docker-jitsi-meet-* jitsi-meet
cd jitsi-meet

Nakon toga je potrebno da se kreira .env datoteka pomoću koje ćete pokrenuti Jitsi Docker kontejner. To možete uraditi komandom:

cp env.example .env

Datoteku .env je poželjno izmeniti, tako što ćete promeniti HTTP i HTTPS port, zatim URL do poddomena ili domena na kome će raditi Jitsi Meet, a takođe mnoštvo drugih podešavanja. Mi ćemo izmeniti potrebne stvari, a to su:

nano .env
# Basic configuration options
#

# Directory where all configuration will be stored
CONFIG=./.jitsi-meet-cfg

# Exposed HTTP port (will redirect to HTTPS port)
HTTP_PORT=8008 <-- Ovo je samo primer porta, vi možete postaviti neki drugi koji se ne koristi.

# Exposed HTTPS port
HTTPS_PORT=5443 <-- Ovo je samo primer porta, vi možete postaviti neki drugi koji se ne koristi.

# System time zone
TZ=Europe/Belgrade <-- Ovo je samo primer vremenske zone, vi možete postaviti neku drugu.

# Public URL for the web service (required)
# Keep in mind that if you use a non-standard HTTPS port, it has to appear in the public URL
PUBLIC_URL=https://meet.mojsajt.com <-- Ovo je samo primer domena/poddomena, vi možete postaviti neki drugi.

# Media IP addresses to advertise by the JVB
# This setting deprecates DOCKER_HOST_ADDRESS, and supports a comma separated list of IPs
# See the "Running behind NAT or on a LAN environment" section in the Handbook:
# https://jitsi.github.io/handbook/docs/devops-guide/devops-guide-docker#running-behind-nat-or-on-a-lan-environment
JVB_ADVERTISE_IPS=194.146.57.xxx <-- Ovo je samo primer IP adrese servera, potrebno je da unesete IP adresu vašeg servera.
!!!VAŽNO!!!!

Ovo su stvari koje treba da odkomentarišete u sekciji Authentication:
ENABLE_AUTH=1 - dozvoljava registrovanim korisnicima da pristupe.
ENABLE_GUESTS=1 - dozovljava neregistrovanim korisnicima da pristupe.
AUTH_TYPE=internal - označava da će ulazak biti sa nalogom koji je lokalno napravljen.
Takođe ćemo odkomentarisati sledeće:
RESTART_POLICY=unless-stopped - kontejner će se restartovati, ako iz nekog razloga bude zaustavljen.

Da biste sačuvali ove izmene, pritisnite CTRL+X na tastaturi, a zatim pritisnite „Y“, a nakon toga Enter.

Potrebno je i da se podese inicijalne lozinke, a to ćete uraditi sledećom komandom:

./gen-passwords.sh

Zatim ćemo preimenovati datoteku docker-compose.yml u datoteku compose.yml jer je to novija konvencija, koju će Docker prilikom starta komande pre pronaći.

cp docker-compose.yml compose.yaml
mv docker-compose.yml docker-compose.yml.bak

Nako što ste uneli potrebne izmene, možete pokrenuti Docker kontejner, a to je potrebno uraditi komandom:

docker-compose up -d

Ako dobijete ovakav odgovor, to znači da ste uspeli da pokrenete Jitsi Meet:

[+] Running 5/5
 ✔ Network jitsi-meet_meet.jitsi   Created                                                                                                             0.1s
 ✔ Container jitsi-meet-prosody-1  Started                                                                                                             0.8s
 ✔ Container jitsi-meet-jicofo-1   Started                                                                                                             1.2s
 ✔ Container jitsi-meet-jvb-1      Started                                                                                                             1.3s
 ✔ Container jitsi-meet-web-1      Started 

Da bi Jitsi Meet koji ste instalirali na vašem VPS serveru bio dostupan putem SSL i samog domena/poddomena, potrebno je da instalirate i NGINX Proxy Manager, putem koga ćete podesiti reverzni proksi i važeći SSL sertifikat.

Idemo u root direktorijum nazad u terminalu i pokrećemo komandu:

cd

Sad kada ste u root direktorijumu, potrebno je da napravite folder za NGINX Proxy Manager i da mu pristupite:

mkdir nginx-proxy-manager
cd nginx-proxy-manager

Sada možete kreirati Docker Compose datoteku u koju ćete upisati potrebne parametre za startovanje Docker kontejnera:

Kreirate je sledeći putem i unutra upisujete sadržaj ispod:

nano docker-compose.yml

version: '3'
services:
  app:
    image: 'jc21/nginx-proxy-manager:latest'
    restart: unless-stopped
    ports:
      - '80:80'
      - '81:81'
      - '443:443'
    volumes:
      - ./data:/data
      - ./letsencrypt:/etc/letsencrypt
    environment:
      DB_MYSQL_HOST: "db"
      DB_MYSQL_PORT: 3306
      DB_MYSQL_USER: "npm"
      DB_MYSQL_PASSWORD: "npm"
      DB_MYSQL_NAME: "npm"
  db:
    image: 'jc21/mariadb-aria:latest'
    restart: unless-stopped
    environment:
      MYSQL_ROOT_PASSWORD: 'npm'
      MYSQL_DATABASE: 'npm'
      MYSQL_USER: 'npm'
      MYSQL_PASSWORD: 'npm'
    volumes:
      - ./data/mysql:/var/lib/mysql

Ne menjate ništa, već je potrebno da sačuvate pomoću CTRL+X, zatim upišite „Y“ i pritisnite Enter.

NGINX Proxy Manager Docker kontejner podižemo sledećom komandom:

docker-compose up -d

Nakon što ste ga pokrenuli, u vašem pretraživaču upišite: http://ip-adresa-servera:81 i pristupite sa podacima:

Korisnik: admin@example.com
Lozinka: changeme

Kada pristupite, odmah će biti potrebno promeniti email za ulazak i lozinku, što i činimo.

Zatim menjamo lozinku:

Kako kreirati SSL sertifikat u NGINX Proxy Manager-u

Da biste kreirali SSL serifikat u NGINX Proxy Manager-u, potrebno je da kliknete na Hosts, a zatim na Proxy hosts.

Na novoj stranici kliknite na Add proxy hosts i u prozorčiću upišite naziv vašeg domena/poddomena, zatim SSL port koji ste definisali u Jitsi Meet konfiguracionoj datoteci. Potrebno je da izgleda ovako:

Sada kliknite na SSL i izaberite Request a new SSL certificate, izaberite Force SSL, zatim prihvatite uslove i kliknite na dugme Save.

Kada je izdavanje SSL sertifikata gotovo, videćete ovakvu stranicu i možete kliknuti na domen/poddomen kako biste otišli na stranicu Jitsi Meet-a.

Sada vaša Jitsi Meet stranica koju ste kreirali na vašem VPS serveru izgleda ovako i zaštićena je SSL sertifikatom. Nakon uspešne instalacije i podešavanja možete da kreirate javne sastanke, ali i privatne što ćemo vam pokazati u nastavku.

Kreiranje, brisanje korisnika i pristup sastanku

Sada kada ste instalirali Jitsi Meet na vašem VPS serveru i on radi, možete napraviti i korisnike, kako biste bili u mogućnosti da kreirate sigurne sastanke, bez ljudi koji bi mogli slučajno da se nađu u istim bez pozivnice.

U terminalu servera je potrebno da pokrenete sledeću komandu:

docker exec -it jitsi-meet-prosody-1 /usr/bin/prosodyctl --config /config/prosody.cfg.lua register korisnik
meet.jitsi lozinka

Ako je kreiranje korisnika prošlo uspešno, dobićete sledeći odgovor:

root@server:~# docker exec -it jitsi-meet-prosody-1 /usr/bin/prosodyctl --config /config/prosody.cfg.lua register testiram
meet.jitsi testiram
usermanager info User account created: testiram@meet.jitsi

VAŽNO!!! U komandi „korisnik“ i „lozinka“ zamenite na naziv korisnika koji želite da kreirate, kao i lozinku koju želite da dodelite.

Da biste obrisali nekog korisnika, koristite sledeću komandu:

docker exec -it jitsi-meet-prosody-1 /usr/bin/prosodyctl –config /config/prosody.cfg.lua deluse

Kada ponovo pristupite Jitsi Meet-u i pokrenete novi sastanak klikom na dugme Start meeting,

Na ovom koraku je potrebno da dozvolite pristup mikrofonu i kameri, a nakon toga da upišite korisničko ime i lozinku korisnika i na taj način ćete pristupiti sastanku.

Nakon ulaska, videćete sledeću sliku i sada možete podeliti vezu sa osobama sa kojima je potrebno organizovati sastanak. Kako ste vi pristupili kao moderator, imaćete mogućnost upravljanja sastankom.

Zaključak

Jitsi Meet na VPS-u pruža sigurnu, pouzdanu i prilagodljivu platformu za video-konferencije, uz potpunu kontrolu nad podacima i bez oslanjanja na komercijalne servise. Već sada možete probati da instalirate Jitsi Meet na vašem serveru.

Ostavi komentar

Vaša adresa neće biti objavljena