Android

Bagaimana cara menyebarkan rocket.chat pada centos 7

How To install Rocket.Chat Server With Apache Web Server On Ubuntu 18.04

How To install Rocket.Chat Server With Apache Web Server On Ubuntu 18.04

Daftar Isi:

Anonim

Rocket.Chat adalah platform komunikasi tim yang lengkap, alternatif Slack yang dikelola sendiri. Itu dibangun dengan Meteor dan menyediakan berbagai fitur termasuk helpdesk chat, konferensi video, berbagi file, pesan suara, API, dan banyak lagi.

Dalam tutorial ini, kami akan menunjukkan kepada Anda cara menginstal dan menggunakan Rocket.Chat pada server CentOS 7 dengan Nginx sebagai proxy reverse SSL.

Prasyarat

Pastikan Anda telah memenuhi prasyarat berikut sebelum melanjutkan dengan tutorial ini:

  • Server CentOS 7, sesuai dengan Rocket resmi. Persyaratan sistem apa yang Anda perlukan setidaknya 1G RAM. Anda masuk sebagai pengguna dengan hak akses sudo. Anda memiliki nama domain yang menunjuk ke alamat IP server Anda., kami akan menggunakan example.com . Anda telah menginstal Nginx, jika tidak Anda dapat menginstalnya dengan mengikuti tutorial ini. Sertifikat SSL. Anda dapat menghasilkan yang gratis dari Let's Encrypt, atau membeli satu dari penyedia lain.

Instal Ketergantungan

Instal paket-paket berikut yang diperlukan untuk membangun modul npm diperlukan:

sudo yum install epel-release curl GraphicsMagick gcc-c++

Selanjutnya, instal Node.js dan npm dengan mengetik:

sudo yum install -y nodejs npm

Pada saat menulis artikel ini, versi Node.js yang disarankan untuk Rocket.Chat adalah Node.js v8.11.3.

Keluarkan perintah berikut untuk menginstal utilitas n dan versi Node.js yang disarankan:

sudo npm install -g inherits n sudo n 8.11.3

MongoDB adalah database berorientasi dokumen NoSQL dan digunakan oleh Rocket.Chat sebagai penyimpan data. Rocket.Chat merekomendasikan MongoDB versi 3.6.

Kami akan menginstal MongoDB menggunakan yum dari repositori MongoDB resmi.

Buka editor pilihan Anda dan buat file repositori berikut:

sudo nano /etc/yum.repos.d/mongodb-org.repo

Rekatkan konten berikut ke dalam file:

/etc/yum.repos.d/mongodb-org.repo

name=MongoDB Repository baseurl=https://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/3.6/x86_64/ gpgcheck=1 enabled=1 gpgkey=https://www.mongodb.org/static/pgp/server-3.6.asc

Simpan file dan tutup editor teks Anda.

Untuk menginstal MongoDB, jalankan perintah berikut:

sudo yum install mongodb-org

Setelah instalasi selesai, aktifkan dan mulai layanan MongoDB:

sudo systemctl start mongod sudo systemctl enable mongod

Buat Pengguna Sistem Baru

Buat pengguna dan grup baru, yang akan menjalankan instance Rocket.Chat kami. Untuk mempermudah, kami akan memberi nama rocket pengguna:

sudo useradd -m -U -r -d /opt/rocket rocket

Tambahkan pengguna nginx ke grup pengguna baru dan ubah izin direktori /opt/rocket sehingga Nginx dapat mengaksesnya:

sudo usermod -a -G rocket nginx sudo chmod 750 /opt/rocket

Menginstal Rocket.Chat

Beralih ke rocket pengguna dengan mengetik:

sudo su - rocket

Unduh Rocket.Chat versi stabil terbaru dengan ikal:

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

Setelah pengunduhan selesai, ekstrak arsipnya dan ganti namanya menjadi Rocket.Chat :

tar zxf rocket.chat.tgz mv bundle Rocket.Chat

Ubah ke direktori Rocket.Chat/programs/server dan instal semua paket npm diperlukan:

cd Rocket.Chat/programs/server npm install

Sebelum membuat unit systemd dan mengatur proxy terbalik dengan Nginx, ada baiknya menguji apakah instalasi berhasil.

Untuk melakukannya, mulailah dengan mengatur variabel lingkungan yang diperlukan:

export PORT=3000 export ROOT_URL=http://example.com:3000/ export MONGO_URL=mongodb://localhost:27017/rocketchat

Selanjutnya, ubah kembali ke direktori Rocket.Chat dan mulai server Rocket.Chat dengan mengeluarkan perintah berikut:

cd../../ node main.js

Jika tidak ada kesalahan Anda harus melihat output berikut:

➔ +---------------------------------------------+ ➔ | SERVER RUNNING | ➔ +---------------------------------------------+ ➔ | | ➔ | Rocket.Chat Version: 0.71.1 | ➔ | NodeJS Version: 8.11.3 - x64 | ➔ | Platform: linux | ➔ | Process Port: 3000 | ➔ | Site URL: http://0.0.0.0:3000/ | ➔ | ReplicaSet OpLog: Disabled | ➔ | Commit Hash: e73dc78ffd | ➔ | Commit Branch: HEAD | ➔ | | ➔ +---------------------------------------------+

Pada titik ini, Rocket.Chat diinstal pada mesin CentOS 7 Anda. Hentikan server Rocket.Chat dengan CTRL+C dan lanjutkan dengan langkah selanjutnya.

Buat Unit Systemd

Untuk menjalankan Rocket.Chat sebagai layanan, buat file unit rocketchat.service di direktori /etc/systemd/system/ :

sudo nano /etc/systemd/system/rocketchat.service Rekatkan konten berikut ke dalam file: /etc/systemd/system/rocketchat.service

Description=Rocket.Chat server After=network.target nss-lookup.target mongod.target StandardOutput=syslog StandardError=syslog SyslogIdentifier=rocketchat User=rocket Environment=MONGO_URL=mongodb://localhost:27017/rocketchat ROOT_URL=http://example.com:3000/ PORT=3000 ExecStart=/usr/local/bin/node /opt/rocket/Rocket.Chat/main.js WantedBy=multi-user.target

Simpan dan tutup file.

Beri tahu systemd bahwa file unit baru telah dibuat dan mulai layanan Rocket.Chat dengan menjalankan:

sudo systemctl daemon-reload sudo systemctl start rocketchat

Periksa status layanan dengan perintah berikut:

sudo systemctl status rocketchat

Outputnya akan terlihat seperti ini:

● rocketchat.service - Rocket.Chat server Loaded: loaded (/etc/systemd/system/rocketchat.service; enabled; vendor preset: disabled) Active: active (running) since Tue 2018-04-10 20:30:56 UTC; 8s ago Main PID: 32356 (node) CGroup: /system.slice/rocketchat.service └─32356 /usr/local/bin/node /opt/rocket/Rocket.Chat/main.js

Jika tidak ada kesalahan, Anda dapat mengaktifkan layanan Rocket.Chat untuk mulai secara otomatis saat boot:

sudo systemctl enable rocketchat

Siapkan proksi terbalik dengan Nginx

Sekarang kita perlu membuat blok server baru untuk instalasi Rocket.Chat kita:

sudo nano /etc/nginx/conf.d/example.com.conf

Rekatkan konten berikut ke dalam file:

/etc/nginx/conf.d/example.com.conf

upstream rocketchat_backend { server 127.0.0.1:3000; } server { listen 80; server_name example.com www.example.com; include snippets/letsencrypt.conf; return 301 https://example.com$request_uri; } server { listen 443 ssl http2; server_name www.example.com; ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem; ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem; ssl_trusted_certificate /etc/letsencrypt/live/example.com/chain.pem; include snippets/ssl.conf; return 301 https://example.com$request_uri; } server { listen 443 ssl http2; server_name example.com; ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem; ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem; ssl_trusted_certificate /etc/letsencrypt/live/example.com/chain.pem; include snippets/ssl.conf; include snippets/letsencrypt.conf; access_log /var/log/nginx/example.com-access.log; error_log /var/log/nginx/example.com-error.log; location / { proxy_pass http://rocketchat_backend/; proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "upgrade"; proxy_set_header Host $http_host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forward-For $proxy_add_x_forwarded_for; proxy_set_header X-Forward-Proto http; proxy_set_header X-Nginx-Proxy true; proxy_redirect off; } }

Muat ulang layanan Nginx agar perubahan diterapkan:

sudo systemctl reload nginx

Mengkonfigurasi Rocket.Chat

Buka browser Anda dan ketik: http://chat.example.com .

Dengan asumsi bahwa instalasi berhasil, Anda akan disajikan dengan Rocket.Chat Setup Wizard yang akan memandu Anda mengatur pengguna admin pertama Anda, mengkonfigurasi organisasi Anda dan mendaftarkan server Anda untuk menerima pemberitahuan push gratis dan banyak lagi.

Bagian pertama dari wizard Pengaturan Awal akan meminta Anda untuk mengatur pengguna Admin Anda:

Klik tombol Go to your workspace Anda dan Anda akan dialihkan ke dasbor Rocket.Chat masuk sebagai pengguna admin.

Kesimpulan

Anda telah berhasil menginstal Rocket.Chat di server CentOS 7 Anda. Anda sekarang dapat mulai menggunakan Rocket.Chat untuk berkolaborasi dengan tim Anda, berbagi file dan mengobrol secara waktu nyata.

rocketchat nodejs centos mongodb