GNU/Linux >> Belajar Linux >  >> Ubuntu

Cara Menginstal Server Rocket.Chat dengan Nginx di Ubuntu 16.04

Rocket.Chat adalah solusi obrolan online gratis dan open source untuk komunikasi tim, ini memungkinkan Anda untuk membangun slack Anda sendiri seperti obrolan online. Rocket.Chat didasarkan pada Javascript, dikembangkan menggunakan kerangka Meteor full stack. Rocket.Chat adalah solusi hebat bagi perusahaan yang ingin membangun platform obrolan pribadi mereka sendiri.

Dalam tutorial ini, saya akan menunjukkan kepada Anda bagaimana membangun server obrolan Anda sendiri menggunakan Rocket.Chat. Saya akan menggunakan server Ubuntu LTS 16.04 terbaru untuk instalasi dan Nginx sebagai reverse proxy untuk aplikasi Rocket.Chat.

Prasyarat

  • Ubuntu 16.04
  • Keistimewaan Root

Langkah 1 - Instal Dependensi Rocket.Chat

Masuk ke server menggunakan ssh (atau terminal) dan ketik 'sudo su' untuk mendapatkan akses root:

ssh [dilindungi email]
sudo su

Perbarui repositori Ubuntu:

apt-get update

Selanjutnya, instal paket baru yang dibutuhkan oleh Rocket.Chat:

apt-get install curl graphicsmagick build-essential

Langkah 2 - Instal MongoDB

Rocket.Chat membutuhkan MongoDB untuk instalasi. Pada langkah ini, kita akan menginstal MongoDB 3.2 dari repositori MongoDB.

Tambahkan server kunci MongoDB agar kami dapat mengakses paket:

sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv EA312927

Kemudian tambahkan repositori MongoDB dengan perintah di bawah ini:

echo "deb http://repo.mongodb.org/apt/ubuntu "$(lsb_release -sc)"/mongodb-org/3.2 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-3.2.list

Perbarui repositori dan instal MongoDB dengan perintah apt:

apt-get update
apt-get install mongodb-org

Tambahkan MongoDB untuk dijalankan pada saat boot dan jalankan:

systemctl aktifkan mongod
systemctl start mongod

MongoDB telah dimulai pada port 27017.

Langkah 3 - Konfigurasikan ReplicaSet MongoDB

Untuk meningkatkan kinerja, Rocket.Chat menggunakan ReplicaSet MongoDB. Pada langkah ini, kita akan mengonfigurasi ReplicaSet MongoDB sederhana dengan mengedit file konfigurasi MongoDB.

Edit file mongod.conf dengan vim:

vim /etc/mongod.conf

Tambahkan "#" di awal baris 24 untuk menonaktifkan MongoDB yang hanya berjalan di IP localhost.

net:
    port:27017
    #bindIp:127.0.0.1

Tambahkan konfigurasi ReplicaSet di bawah ini pada baris 34.

#Replikasi:
Replikasi:
Oplogsizemb:1
ReplsetName:RS0

Simpan dan keluar.

Mulai ulang layanan MongoDB:

systemctl restart mongod

Selanjutnya, mulai shell MongoDB dan mulai ReplicaSet:

ekspor LC_ALL=C
mongo
rs.initiate()

Memulai hasil:

{
  "info2" :"tidak ada konfigurasi yang ditentukan. Menggunakan konfigurasi default untuk set",
  "me" :"nyanko-sensei:27017",
  "ok" :1
}

Pastikan 'ok ' nilainya 1 . Jika hasilnya adalah angka lain, berarti ada yang salah.

Langkah 4 - Instal npm dan nodejs

Pada langkah ini, kita akan menginstal nodejs dan npm dari repositori Ubuntu. Kemudian kita akan menginstal paket n dengan perintah npm untuk mendapatkan versi nodejs tertentu. Versi Rocket.Chat terbaru membutuhkan nodejs 4.5.

Instal nodejs dan npm dari repositori Ubuntu:

apt-get install nodejs npm

Selanjutnya instal paket n secara global ke sistem dengan perintah npm:

npm install -g n

Gunakan perintah n untuk mengunduh dan menyetel nodejs versi 4.5.

sudo n 4.5

Terakhir, periksa versi nodejs:

simpul --version
npm -v

Langkah 5 - Instal Server Rocket.Chat

Kami akan menginstal Rocket.Chat (versi terbaru) di direktori /var/www/.

Unduh versi terbaru Rocket.Chat dan ekstrak:

curl -L https://rocket.chat/releases/latest/download -o rocket.chat.tgz
tar -xzvf rocket.chat.tgz

Buat direktori /var/www/ baru dan ganti nama direktori bundel menjadi 'Rocket.Chat' lalu pindahkan:

mkdir -p /var/www/
mv bundle Rocket.Chat
mv Rocket.Chat /var/www/

Buka direktori Rocket.Chat, atur beberapa variabel lingkungan yang diperlukan dan mulai server Rocket.Chat.

cd /var/www/Rocket.Chat/
cd program/server/
npm install

cd ../../
ekspor ROOT_URL=http://192.168.1.110:3000/
ekspor MONGO_URL=mongodb://nyanko-sensei:27017/rocketchat?replicaSet=rs0
ekspor PORT=3000
node main.js

Rocket.Chat terinstal, buka browser web Anda dan kunjungi alamat IP server pada port 3000. - 192.168.1.110:3000.

Langkah 6 - Instal dan Konfigurasi Nginx sebagai Proxy Terbalik untuk Rocket.Chat

Pada langkah 5, kami menginstal Rocket.Chat sebagai aplikasi mandiri. Dalam tutorial ini, kita akan menjalankan Rocket.Chat di belakang server web Nginx pada koneksi https untuk mendapatkan penyiapan yang aman dan cepat.

Instal Nginx dengan perintah apt:

apt-get install nginx

Buat direktori SSL baru:

mkdir -p /etc/nginx/ssl/
cd /etc/nginx/ssl/

Buat file sertifikat SSL dan ubah izin file kunci:

openssl req -new -x509 -days 365 -nodes -out /etc/nginx/ssl/rocket-chat.crt -keyout /etc/nginx/ssl/rocket-chat.key
chmod 400 roket- chat.key

Selanjutnya, buat file host virtual chat roket baru di direktori situs yang tersedia.

cd /etc/nginx/sites-available/
vim rocket-chat

Tempel konfigurasi host virtual baru di bawah ini:

# Upstreams
backend upstream {
    server 127.0.0.1:3000;
}

# Opsi Pengalihan
server {
  dengarkan 80;
  server_name rocket-chat.co;
  # menegakkan https
  kembali 301 https://$server_name$request_uri;
}

# HTTPS Server
server {
    listen 443;
    server_name rocket-chat.co;

    error_log /var/log/nginx/rocketchat.access.log;

    ssl aktif;
    ssl_certificate /etc/nginx/ssl/rocket-chat.crt;
    ssl_certificate_key /etc/nginx/ssl/rocket-chat.key;
     ssl TLSv1.1 TLSv1.2; # jangan gunakan SSLv3 ref:POODLE

    location / {
       proxy_pass http://192.168.1.110:3000/;
       proxy_http_version 1.1;
       proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Sambungan "upgrade";
       proxy_set_header Host $http_host;

       proxy_set_header X-Real-IP $remote_addr;
       proxy_set_header br />        proxy_set_header X-Forward-Proto http;
       proxy_set_header X-Nginx-Proxy true;

       proxy_redirect off;
    }
}

Simpan dan keluar.

Saya akan menjalankan Rocket.Chat dengan nama domain baru 'rocket-chat.co'. Silakan gunakan nama domain Anda sendiri dan ganti di file konfigurasi di mana pun muncul.

Aktifkan host virtual Rocket.Chat dan uji file konfigurasi:

ln -s /etc/nginx/sites-available/rocket-chat /etc/nginx/sites-enabled/rocket-chat
nginx -t

Pastikan tidak ada pesan kesalahan.

Mulai ulang server web Nginx:

systemctl restart nginx

Langkah 7 - Menguji Rocket.Chat

Nginx telah dikonfigurasi sebagai proxy terbalik untuk server Rocket.Chat dan kita perlu memperbarui variabel lingkungan untuk menjalankan Rocket.Chat sekarang.

Jalankan Rocket.Chat dengan variabel baru di bawah ini:

cd /var/www/Rocket.Chat/
ekspor ROOT_URL=https://rocket-chat.co
ekspor MONGO_URL=mongodb://nyanko-sensei:27017/rocketchat?replicaSet=rs0
ekspor PORT=3000
node main.js

Di browser web Anda, buka URL:rocket-chat.co (atau nama domain khusus Anda) - Anda akan diarahkan ke koneksi https.

Buat akun admin pertama Anda dengan mengeklik 'Daftarkan akun baru' tautan.

Masukkan nama, email, dan kata sandi Anda, lalu klik 'DAFTAR AKUN BARU '.

Konfirmasi untuk menggunakan 'SITE-URL' baru dengan nama domain. Klik 'Ya '.

Daftarkan nama pengguna, klik 'GUNAKAN NAMA PENGGUNA INI '.

Pengguna admin telah dibuat dan inilah Dashboard Rocket.Chat. Anda dapat mulai mengobrol dan membuat saluran sendiri untuk tim Anda.

Rocket.Chat telah diinstal dengan server web Nginx di ubuntu 16.04.

Hasil setelah kami menggunakan variabel lingkungan baru:


Ubuntu
  1. Cara Menginstal HTTP Git Server Dengan Nginx di Ubuntu 16.04

  2. Cara Menginstal HTTP Git Server dengan Nginx di Ubuntu 20.04

  3. Cara Menginstal Rocket.Chat di Ubuntu 16.04

  1. Cara Menginstal Nginx di Ubuntu 20.04

  2. Cara Menginstal Nextcloud dengan Nginx di Ubuntu 18.04 LTS

  3. Cara Menginstal Rocket.Chat di Ubuntu 18.04

  1. Cara Menginstal MediaWiki dengan Nginx di Ubuntu 16.04

  2. Cara Menginstal Magento dengan Nginx di Ubuntu 15.10

  3. Cara Menginstal Mailpile dengan Nginx di Ubuntu 15.10