GNU/Linux >> Belajar Linux >  >> Linux

Cara Menyebarkan Obrolan Roket dengan Nginx di Ubuntu 18.04

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!


Linux
  1. Cara Menyebarkan Modsecurity dengan Nginx di Ubuntu 20.04 LTS

  2. Cara Menginstal Rocket.Chat di Ubuntu 16.04

  3. Cara Menginstal Rocket.Chat di Ubuntu 18.04

  1. Cara Menyebarkan Rocket.Chat di Ubuntu 18.04

  2. Cara menggunakan Rocket.Chat di CentOS 7

  3. Cara Menginstal dan Mengatur Stack MERN dengan Nginx di Ubuntu 20.04

  1. Cara Menginstal Server Rocket.Chat dengan Nginx di Ubuntu 16.04

  2. Cara Menginstal MediaWiki dengan Nginx di Ubuntu 16.04

  3. Cara Menginstal Magento dengan Nginx di Ubuntu 15.10