Install TeamTalk 5 Server dengan docker

Share this:

TeamTalk adalah sebuah platform konferensi suara dan teks berbasis VoIP (Voice over Internet Protocol) yang memungkinkan pengguna untuk berkomunikasi secara real-time. Aplikasi ini banyak digunakan oleh komunitas tunanetra karena antarmuka dan fitur-fiturnya yang mendukung aksesibilitas. Sejak pertama kali saya mengenalnya pada tahun 2016, TeamTalk tetap menjadi salah satu media komunikasi yang aktif digunakan hingga saat ini. Terdapat banyak server publik yang tersedia, termasuk dari Indonesia, yang dapat diakses kapan saja oleh siapa pun.

Panduan ini saya buat untuk membantu siapa saja, terutama teman-teman disabilitas netra dan komunitasnya, yang ingin menjalankan server TeamTalk secara mandiri. Dengan panduan ini, diharapkan siapa pun bisa dengan mudah menjalankan server sendiri menggunakan teknologi Docker, tanpa harus tergantung pada server publik.

Sebelum Memulai, Harap Perhatikan Hal-Hal Berikut:

  1. Pengetahuan dasar Linux server: Disarankan untuk memiliki pemahaman dasar tentang Linux. Namun, jika tidak, Infi Friends bisa bertanya ke AI atau cari referensi secara online.
  2. Memiliki akses ke server: Gunakan server yang siap pakai untuk instalasi. Jika belum punya, Infi Friends bisa mencari layanan VPS gratis atau promo diskon besar melalui pencarian online.
  3. Docker dan Docker Compose: Server yang digunakan harus sudah terpasang Docker dan Docker Compose. Ini adalah persyaratan utama agar instalasi berjalan lancar.
  4. Penyesuaian port: Pastikan port yang digunakan di file konfigurasi XML dan file docker-compose.yml adalah sama. Ini penting agar server berjalan tanpa konflik jaringan.
  5. Siapkan mental: Proses ini mungkin tampak teknis, tapi dengan panduan ini, semuanya akan lebih mudah.
Baca Juga:  PENJELASAN TENTANG MARKDOWN (Versi Tunanetra)

Jika semua syarat di atas telah dipenuhi, mari lanjutkan ke langkah-langkah teknis selanjutnya!

Membuat Direktori untuk XML, Data, dan Log

Untuk memulai, Infi Friends perlu membuat tiga direktori di server untuk menyimpan file XML, data, dan log. Lakukan langkah berikut:

mkdir -p /path/to/your/directory/xml
mkdir -p /path/to/your/directory/data
mkdir -p /path/to/your/directory/log

Gantilah “/path/to/your/directory” dengan lokasi yang sesuai. Setelah itu, pastikan untuk memberikan izin yang benar agar Docker dapat mengakses direktori tersebut:

chmod -R 777 /path/to/your/directory/xml
chmod -R 777 /path/to/your/directory/data
chmod -R 777 /path/to/your/directory/log

Membuat Dockerfile

Berikut adalah Dockerfile yang akan Infi Friends gunakan untuk membuat image Docker untuk TeamTalk Server. Salin dan tempelkan isi berikut ke dalam file bernama Dockerfile:

FROM debian:bookworm-slim

RUN apt-get update && apt-get install -y wget tar libasound2 libx11-6 libxi6 libxtst6 apt-utils locales
RUN apt-get install -y locales-all
RUN locale-gen en_US.UTF-8 && update-locale LANG=en_US.UTF-8

RUN useradd -m tt

WORKDIR /home/tt

RUN wget https://bearware.dk/teamtalk/v5.17/teamtalk-v5.17-ubuntu22-x86_64.tgz && \
    tar -xf teamtalk-v5.17-ubuntu22-x86_64.tgz && \
    mv teamtalk-v5.17-ubuntu22-x86_64/server/tt5srv . && \
    rm -rf teamtalk-v5.17-ubuntu22-x86_64*

COPY entrypoint.sh /entrypoint.sh
RUN chmod +x /entrypoint.sh

RUN mkdir -p /home/tt/xml /home/tt/log /home/tt/data && \
    chown -R tt:tt /home/tt && chmod -R 777 /home/tt

USER tt
ENTRYPOINT ["/entrypoint.sh"]

Buat entrypoint.sh

Selanjutnya, buat file entrypoint.sh yang akan menjalankan server TeamTalk ketika container dijalankan. Berikut isi dari entrypoint.sh:

#!/bin/bash
exec /home/tt/tt5srv -nd -c /home/tt/xml/tt5srv.xml -l /home/tt/log/tt5srv.log

Mengatur Docker Compose

Untuk mempermudah pengelolaan container, kita akan menggunakan Docker Compose. Buat file bernama docker-compose.yml dengan isi berikut:

services:
  teamtalk:
    build:
      context: .
    image: myteamtalk
    container_name: teamtalk
    ports:
      - "10333:10333/tcp"
      - "10333:10333/udp"
    volumes:
      - ./xml:/home/tt/xml
      - ./log:/home/tt/log
      - ./data:/home/tt/data
    restart: unless-stopped

  teamtalk-wizard:
    image: myteamtalk
    container_name: teamtalk-wizard
    entrypoint: /home/tt/tt5srv -wizard -c /home/tt/xml/tt5srv.xml
    volumes:
      - ./xml:/home/tt/xml
    stdin_open: true
    tty: true

Build Docker Image

Setelah Infi Friends selesai dengan Dockerfile dan docker-compose.yml, jalankan perintah berikut untuk membangun image Docker:

docker-compose build

Tunggu Building image sampai selesai

Baca Juga:  Instalasi TeamTalk 5 Server Pada CentOS 7

membuat xml file dengan wizard

Jika Infi Friends belum memiliki file tt5srv.xml dan baru pertama kali menjalankan server TeamTalk, silahkan ketikan perintah berikut untuk membuat file xml:

docker-compose run --rm teamtalk-wizard

Perintah ini akan menjalankan wizard untuk menghasilkan file tt5srv.xml yang dibutuhkan.

Menggunakan file xml yang sudah ada

Jika Infi Friends sudah memiliki file tt5srv.xml, cukup salin file tersebut ke direktori xml yang sudah dibuat sebelumnya

Menjalankan Server TeamTalk

Setelah proses build image selesai, Infi Friends bisa menjalankan container dengan perintah berikut:

docker-compose up -d

Penutup

Setelah semua langkah dilakukan, coba akses TeamTalk server yang telah dikonfigurasi di atas melalui client TeamTalk. Jika tidak berhasil, pastikan port di firewall telah dibuka, dan container sudah berjalan dengan benar tanpa error.

Jangan ragu untuk bertanya ataupun berkomentar, selagi mampu ngetik, dan mempergunakan AI

Leave a Reply

error: Konten terlindungi !!