Instalasi Jitsi dengan Docker pada Ubuntu 20.04

3 min read

Disclaimer
Saya bekerja di AWS, semua opini adalah dari saya pribadi. (I work for AWS, my opinions are my own.)
Instalasi Jitsi dengan Docker pada Ubuntu 20.04
Photo by Pawel Chu on Unsplash

TeknoCerdas.com – Salam cerdas untuk kita semua. Pada tahun 2020 karena pandemi COVID-19 aplikasi online video conference atau online meeting mendadak populer. Sebut saja Zoom yang popularitasnya meroket di 2020 karena hampir tiap organisasi di dunia baik korporasi, pendidikan atau pun personal menggunakannya untuk menggantikan pertemuan offline. Disisi lain terdapat aplikasi open source video conference yaitu Jitsi. Pada tulisan ini kita akan melakukan Instalasi Jitsi dengan Docker pada Ubuntu 20.04.

Jitsi sebenarnya adalah sebuah aplikasi yang terdiri dari beberapa komponen dan yang paling umum digunakan yaitu Jitsi Meet. Fitur-fitur dari Jitsi Meet cukup lengkap diantaranya:

  • Auto-view peserta yang bicara atau click ke peserta untuk melihat video mereka.
  • Tersedia aplikasi untuk Android dan iOS
  • Terdapat fitur chatting (khusus web)
  • Lock meeting room dengan password
  • Dapat melakukan screen sharing (via Jibri)
  • Streaming conference ke Youtube
  • Angkat tangan untuk mendapat atensi
  • Statistik waktu bicara tiap peserta
  • Pilihan untuk Audio-only
  • Memainkan video Youtube untuk semua peserta
  • Ikut konferensi melalui nomor Telepon (via Jigasi)

Dapat terlihat jika fitur-fitur Jitsi diatas tidak kalah dengan aplikasi berbayar seperti Zoom.

Baca Juga
Menjalankan WordPress menggunakan Docker

Metode instalasi Jitsi yang kita gunakan pada tulisan ini adalah dengan Docker. Dengan Docker maka proses instalasi menjadi lebih sederhana karena sebuah kebutuhan sudah dipaket dalam Docker image.

Dalam contoh ini saya menggunakan Amazon EC2 untuk percobaan. Dimana saya menggunakan type t3.large dengan RAM sebesar 8GB dan 2 vCPU.

1. Install Docker

Sebelum memulai instalasi Jitsi kita install terlebih dahulu Docker dan Docker Compose. Metode instalasi yang digunakan adalah menginstal paket DEB secara manual.

Kunjungi alamat URL berikut untuk mendownload paket-paket Docker yang dibutuhkan pada Ubutnu 20.04.

https://download.docker.com/linux/ubuntu/dists/focal/pool/stable/amd64/

Dalam contoh ini saya menggunakan containerd.io_1.4.3-1, docker-ce-cli dan docker-ce keduanya versi 20.10.1~3-0.

Masuk pada server Ubuntu 20.04 kemudian gunakan wget atau curl untuk mendownload paket DEB.

$ mkdir docker-package
$ cd docker-package
$ wget https://download.docker.com/linux/ubuntu/dists/focal/pool/stable/amd64/containerd.io_1.4.3-1_amd64.deb
$ wget https://download.docker.com/linux/ubuntu/dists/focal/pool/stable/amd64/docker-ce-cli_20.10.1~3-0~ubuntu-focal_amd64.deb
$ wget https://download.docker.com/linux/ubuntu/dists/focal/pool/stable/amd64/docker-ce_20.10.1~3-0~ubuntu-focal_amd64.deb

Lanjutkan dengan melakukan install semua paket DEB dengan perintah dpkg.

$ sudo dpkgi -i *.deb

Verifikasi jika Docker berjalan dengan menjalankan Docker image hello-world.

$ sudo docker run --rm hello-world
Unable to find image 'hello-world:latest' locally
latest: Pulling from library/hello-world
0e03bdcc26d7: Pull complete
Digest: sha256:1a523af650137b8accdaed439c17d684df61ee4d74feac151b5b337bd29e7eec
Status: Downloaded newer image for hello-world:latest

Hello from Docker!
This message shows that your installation appears to be working correctly.

To generate this message, Docker took the following steps:
 1. The Docker client contacted the Docker daemon.
 2. The Docker daemon pulled the "hello-world" image from the Docker Hub.
    (amd64)
 3. The Docker daemon created a new container from that image which runs the
    executable that produces the output you are currently reading.
 4. The Docker daemon streamed that output to the Docker client, which sent it
    to your terminal.

To try something more ambitious, you can run an Ubuntu container with:
 $ docker run -it ubuntu bash

Share images, automate workflows, and more with a free Docker ID:
 https://hub.docker.com/

For more examples and ideas, visit:
 https://docs.docker.com/get-started/

Tampilan diatas menandakan bahwa Docker sudah berjalan dengan baik. Langkah berikutnya adalah install Docker Compose yang merupakan utilitas terpisah dari Docker.

Versi Docker Compose yang akan digunakan adalah 1.27.4. Download Docker Compose dari GitHub release page yang beralamat di:

https://github.com/docker/compose/releases

$ sudo wget -O /usr/local/bin/docker-compose \
https://github.com/docker/compose/releases/download/1.27.4/docker-compose-Linux-x86_64
$ chmod +x /usr/local/bin/docker-compose

Verifikasi dengan menjalankan perintah untuk menampilkan versi.

$ docker-compose --version
docker-compose version 1.27.4, build 40524192

2. Install Jitsi melalui Docker

Versi Jitsi yang akan digunakan adalah stable-5142-4. Download Docker file dari GitHub jitsi/docker-jitsi-meet.

$ wget -O /tmp/jitsi.tar.gz https://github.com/jitsi/docker-jitsi-meet/archive/stable-5142-4.tar.gz

Kemudian extract semua files ke /opt.

$ sudo tar xvf /tmp/jitsi.tar.gz -C /opt/

Masuk ke direktori hasil extract.

$ cd /opt/docker-jitsi-meet-stable-5142-4/

Buat file .env yang diperlukan oleh konfigurasi Jitsi dengan menyalin dari file contoh.

$ cp env.example .env

Buat password secara otomatis dengan menjalankan shell script password generator yang sudah disiapkan.

$ ./gen-password.sh

Edit konfigurasi pada file .env dengan mengubah beberapa config.

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

# Exposed HTTP port
HTTP_PORT=8000

# Exposed HTTPS port
HTTPS_PORT=8443

# System time zone
TZ=Asia/Jakarta

# Public URL for the web service (required)
# Ganti dengan IP Public Anda atau gunakan
# http://localhost:8443 jika pada local machine
PUBLIC_URL=https://13.212.239.5:8443

Langkah terakhir adalah dengan menjalankan semua service dengan Docker Compose.

$ sudo docker-compose up -d
Creating network "docker-jitsi-meet-stable-5142-4_meet.jitsi" with the default driver
Creating docker-jitsi-meet-stable-5142-4_web_1     ... done
Creating docker-jitsi-meet-stable-5142-4_prosody_1 ... done
Creating docker-jitsi-meet-stable-5142-4_jicofo_1  ... done
Creating docker-jitsi-meet-stable-5142-4_jvb_1     ... done

Buka alamat URL dari server untuk membuka Jitsi Meet versi web. Dalam contoh IP publik yang saya gunakan adalah 13.212.239.5 dan port HTTPS yang saya gunakan pada konfigurasi adalah 8443. Jadi alamat URL yang harus dibuka adalah https://13.212.239.5:8443. Browser akan melakukan komplain terhadap self signed SSL certificate, abaikan saja.

Jitsi Meet ketika pertama kali dibuka
Pertama kali Jitsi Meet dibuka

Akan muncul tampilan untuk membuat meeting seperti diatas. Dalam contoh saya membuat nama meeting teknocerdas-jitsi.

Tampilan Jitsi Meet
Tampilan Jitsi Meet

Jitsi dapat digunakan sebagai alternatif dari aplikasi online meeting berbayar seperti Zoom, Microsoft Team dan lainnya. Dengan Docker instalasi Jitsi Meet pada Ubuntu 20.04 sangat mudah dilakukan.