Rocket.Chat adalah gratis, open source, aplikasi chat self-hosted yang memungkinkan Anda untuk meng-host server chat Anda sendiri. Ini sangat mirip dengan Slack dan menawarkan fitur serupa termasuk berbagi file, sistem tiket, obrolan video, dan konferensi. Dengan Rocket.Chat, Anda dapat mengobrol dengan anggota tim, membuat saluran dan grup pribadi, melakukan panggilan video dan audio, berbagi layar, dan mengunggah file.
Fitur
- API yang Kuat
- Pemantauan video jarak jauh
- Konferensi audio dan video gratis
- Sinkronisasi grup LiveChat dan LDAP
- Berbagi layar dan file
- Notifikasi desktop dan seluler
- Ruang publik dan pribadi multi-pengguna
Rocket.Chat adalah pilihan terbaik jika Anda mencari platform obrolan sumber terbuka untuk dihosting di Cloud.
Dalam tutorial ini, kami akan menunjukkan cara menginstal dan mengkonfigurasi Rocket.Chat di Ubuntu 18.04 VPS.
Prasyarat
- VPS Ubuntu 18.04 baru di Platform Cloud Atlantic.Net.
- Nama domain yang valid menunjuk ke alamat IP VPS Anda. Dalam tutorial ini, kita akan menggunakan node1.example.com.
Catatan:Anda dapat merujuk ke Atlantic DNS Guide untuk mengelola data DNS.
Langkah 1 – Buat Server Cloud Atlantic.Net
Pertama, masuk ke Server Cloud Atlantic.Net Anda. Buat server baru, pilih Ubuntu 18.04 sebagai sistem operasi dengan setidaknya 2GB RAM. Hubungkan ke Server Cloud Anda melalui SSH dan masuk menggunakan kredensial yang disorot di bagian atas halaman.
Setelah Anda masuk ke server Ubuntu 18.04 Anda, jalankan perintah berikut untuk memperbarui sistem dasar Anda dengan paket terbaru yang tersedia.
apt-get update -y
Langkah 2 – Instal Node.js
Rocket.Chat membutuhkan Node.js dan dependensi lain untuk membangun paket npm dari sumbernya. Pertama, tambahkan repositori Node.js dengan menjalankan perintah berikut:
curl -sL https://deb.nodesource.com/setup_12.x — Node.js 12 LTS "Erbium"| bash -
Selanjutnya, perbarui repositori dan instal Node.js beserta dependensi yang diperlukan dengan perintah berikut:
apt-get update -y apt-get install nodejs build-essential curl software-properties-common graphicsmagick -y
Langkah 3 – Instal MongoDB
Rocket.Chat membutuhkan MongoDB untuk diinstal di server Anda. Secara default, versi terbaru MongoDB tidak tersedia di repositori default Ubuntu 18.04, jadi Anda perlu menambahkan repositori MongoDB ke server Anda.
Pertama, unduh dan tambahkan kunci repositori resmi dengan perintah berikut:
apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 9DA31620334BD75D9DCB49F368818C72E52529D4
Selanjutnya, tambahkan repositori MongoDB dengan menjalankan perintah berikut:
add-apt-repository 'deb [arch=amd64] https://repo.mongodb.org/apt/ubuntu bionic/mongodb-org/4.0 multiverse'
Setelah repositori ditambahkan, perbarui repositori dan instal MongoDB dengan perintah berikut:
apt-get update -y apt-get install mongodb-org -y
Setelah MongoDB diinstal, mulai layanan MongoDB dan aktifkan untuk memulai setelah sistem reboot:
systemctl start mongod systemctl enable mongod
netstat -ant
Keluaran:
Active Internet connections (servers and established) Proto Recv-Q Send-Q Local Address Foreign Address State tcp 0 0 127.0.0.1:27017 0.0.0.0:* LISTEN tcp 0 0 127.0.0.53:53 0.0.0.0:* LISTEN tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN
Langkah 4 – Konfigurasi MongoDB
Rocket.Chat menggunakan set replika MongoDB untuk meningkatkan kinerja, jadi Anda perlu mengonfigurasi set replika MongoDB. Anda dapat mengkonfigurasinya dengan perintah berikut:
echo -e "replication:\n replSetName: \"rs01\"" | tee -a /etc/mongod.conf
Selanjutnya, restart layanan MongoDB untuk menerapkan perubahan:
systemctl restart mongod
Selanjutnya, masuk ke shell MongoDB dan mulai set replika dengan perintah berikut:
mongo rs.initiate()
Anda akan melihat output berikut:
Pada titik ini, MongoDB diinstal dan dikonfigurasi dengan set replika.
Ketik Keluar untuk keluar dari MongoDB.
Langkah 5 – Instal Rocket.Chat
Sebelum memulai, disarankan untuk membuat pengguna dan grup baru untuk menjalankan Rocket.Chat.
Pertama, buat pengguna baru dengan nama roket dengan perintah berikut:
adduser rocket
Anda akan mendapatkan output berikut:
Selanjutnya, izinkan Nginx untuk mengakses direktori Rocket.Chat dengan menambahkan pengguna roket ke grup www-data:
usermod -a -G rocket www-data
Selanjutnya, alihkan pengguna ke roket dan unduh versi terbaru Rocket.Chat dengan perintah berikut:
su - rocket curl -L https://releases.rocket.chat/latest/download -o rocket.chat.tgz
Setelah unduhan selesai, ekstrak file yang diunduh dengan perintah berikut:
tar zxf rocket.chat.tgz
Selanjutnya, pindahkan direktori yang diekstrak ke Rocket.Chat menggunakan perintah berikut:
mv bundle Rocket.Chat
Selanjutnya, ubah direktori ke direktori Rocket.Chat/programs/server dan instal semua paket npm yang diperlukan dengan perintah berikut:
cd Rocket.Chat/programs/server npm install
Catatan: Rocket.Chat akan membutuhkan waktu beberapa menit untuk dipasang
Setelah semua paket diinstal, Anda akan melihat output berikut:
Selanjutnya, atur variabel lingkungan yang diperlukan untuk menguji instalasi Rocket.Chat:
export PORT=3000 export ROOT_URL=http://0.0.0.0:3000/ export MONGO_URL=mongodb://localhost:27017/rocketchat export MONGO_OPLOG_URL=mongodb://localhost:27017/local?replSet=rs01
Selanjutnya, ubah direktori ke Rocket.Chat dan mulai server Rocket.Chat menggunakan perintah berikut:
cd ~/Rocket.Chat node main.js
Catatan: Proses ini dapat memakan waktu beberapa menit untuk diselesaikan
Anda akan mendapatkan output berikut:
Selanjutnya, hentikan server Rocket.Chat dengan CTRL+C lalu jalankan perintah berikut untuk keluar dari pengguna roket:
exit
Langkah 6 – Buat File Layanan Systemd untuk Rocket.Chat
Selanjutnya, buat file layanan systemd untuk memulai dan menghentikan layanan Rocket.Chat:
nano /etc/systemd/system/rocketchat.service
Tambahkan baris berikut:
[Unit] Description=Rocket.Chat server After=network.target nss-lookup.target mongod.target [Service] StandardOutput=syslog StandardError=syslog SyslogIdentifier=rocketchat User=rocket Environment=MONGO_URL=mongodb://localhost:27017/rocketchat MONGO_OPLOG_URL=mongodb://localhost:27017/local?replSet=rs01 ROOT_URL=http://node1.example.com PORT=3000 ExecStart=/usr/bin/nodejs /home/rocket/Rocket.Chat/main.js [Install] WantedBy=multi-user.target
Simpan dan tutup file setelah Anda selesai. Kemudian, muat ulang daemon systemd dengan perintah berikut:
systemctl daemon-reload
Selanjutnya, mulai layanan Rocket.Chat dan aktifkan untuk memulai setelah sistem reboot:
systemctl start rocketchat systemctl enable rocketchat
Anda sekarang dapat memverifikasi layanan Rocket.Chat menggunakan perintah berikut:
systemctl status rocketchat
Anda akan mendapatkan output berikut:
Langkah 7 – Siapkan Proksi Terbalik dengan Nginx
Selanjutnya, Anda perlu menginstal dan mengkonfigurasi Nginx sebagai proxy terbalik untuk meneruskan permintaan klien yang datang pada port 3000 ke port Nginx 80.
Pertama, instal server web Nginx dengan perintah berikut:
apt-get install nginx -y
Selanjutnya, buat file konfigurasi virtual host Nginx dengan perintah berikut:
nano /etc/nginx/sites-available/rocket
Tambahkan baris berikut:
server { listen 80; server_name node1.example.com; access_log /var/log/nginx/rocket-access.log; error_log /var/log/nginx/rocket-error.log; location / { proxy_set_header X-Forwarded-Host $host; proxy_set_header X-Forwarded-Server $host; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_pass http://127.0.0.1:3000/; } }
Simpan dan tutup file setelah Anda selesai. Kemudian, aktifkan virtual host dengan perintah berikut:
ln -s /etc/nginx/sites-available/rocket /etc/nginx/sites-enabled/
Terakhir, restart layanan Nginx untuk menerapkan perubahan konfigurasi:
systemctl restart nginx
Langkah 8 – Akses Antarmuka Web Rocket.Chat
Sekarang, buka browser web Anda dan navigasikan ke URL http://node1.example.com. Anda akan diarahkan ke Wizard Pengaturan Rocket.Chat:
Berikan nama pengguna, email, detail sandi admin Anda dan klik tombol Lanjutkan tombol. Anda akan melihat halaman berikut:
Selanjutnya, berikan info organisasi Anda dan klik tombol Lanjutkan tombol. Anda akan melihat halaman berikut:
Selanjutnya, berikan informasi server Anda dan klik tombol Lanjutkan tombol. Anda akan melihat halaman berikut:
Selanjutnya, gunakan gateway dan proxy Rocket.Chat yang telah dikonfigurasi sebelumnya, dan klik tombol Lanjutkan tombol. Anda akan melihat halaman berikut:
Sekarang, klik Buka ruang kerja Anda tombol. Anda akan diarahkan ke dasbor default Rocket.Chat:
Kesimpulan
Selamat! Anda telah berhasil menginstal dan mengkonfigurasi server Rocket.Chat dengan Nginx sebagai proxy terbalik di Ubuntu 18.04 VPS. Anda dapat mengunjungi Rocket.Chat Doc untuk mempelajari sistem obrolan baru. Mulailah dengan Rocket.Chat hari ini di VPS Atlantic.Net!