GNU/Linux >> LINUX-Kenntnisse >  >> Cent OS

So stellen Sie Rocket.Chat auf CentOS 7 bereit

Rocket.Chat ist eine komplette Teamkommunikationsplattform, eine selbst gehostete Slack-Alternative. Es wurde mit Meteor erstellt und bietet verschiedene Funktionen, darunter Helpdesk-Chat, Videokonferenzen, Dateifreigabe, Sprachnachrichten, API und mehr.

In diesem Tutorial zeigen wir Ihnen, wie Sie Rocket.Chat auf einem CentOS 7-Server mit Nginx als SSL-Reverse-Proxy installieren und bereitstellen.

Voraussetzungen #

Stellen Sie sicher, dass Sie die folgenden Voraussetzungen erfüllt haben, bevor Sie mit diesem Lernprogramm fortfahren:

  • CentOS 7-Server, gemäß den offiziellen Rocket.Chat-Systemanforderungen benötigen Sie mindestens 1 GB RAM.
  • Sie sind als Benutzer mit sudo-Berechtigungen angemeldet.
  • Sie haben einen Domänennamen, der auf Ihre Server-IP-Adresse verweist. In diesem Artikel verwenden wir example.com .
  • Sie haben Nginx installiert, wenn nicht, können Sie es installieren, indem Sie dieser Anleitung folgen.
  • Ein SSL-Zertifikat. Sie können einen kostenlosen von Let’s Encrypt generieren oder einen von einem anderen Anbieter kaufen.

Installieren Sie Abhängigkeiten #

Installieren Sie die folgenden Pakete, die zum Erstellen des erforderlichen npm erforderlich sind Module:

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

Als nächstes installieren Sie Node.js und npm indem Sie Folgendes eingeben:

sudo yum install -y nodejs npm

Zum Zeitpunkt der Erstellung dieses Artikels ist die empfohlene Node.js-Version für Rocket.Chat Node.js v8.11.3.

Geben Sie die folgenden Befehle aus, um n zu installieren Dienstprogramm und die empfohlene Version von Node.js:

sudo npm install -g inherits nsudo n 8.11.3

MongoDB ist eine dokumentenorientierte NoSQL-Datenbank und wird von Rocket.Chat als Datenspeicher verwendet. Rocket.Chat empfiehlt MongoDB Version 3.6.

Wir werden MongoDBusing yum installieren aus den offiziellen MongoDB-Repositories.

Öffnen Sie den Editor Ihrer Wahl und erstellen Sie die folgende Repository-Datei:

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

Fügen Sie den folgenden Inhalt in die Datei ein:

/etc/yum.repos.d/mongodb-org.repo
[mongodb-org-3.6]
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

Speichern Sie die Datei und schließen Sie Ihren Texteditor.

Führen Sie den folgenden Befehl aus, um MongoDB zu installieren:

sudo yum install mongodb-org

Aktivieren und starten Sie nach Abschluss der Installation den MongoDB-Dienst:

sudo systemctl start mongodsudo systemctl enable mongod

Neuen Systembenutzer # erstellen

Erstellen Sie einen neuen Benutzer und eine neue Gruppe, die unsere Rocket.Chat-Instanz ausführen. Der Einfachheit halber nennen wir den Benutzer rocket :

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

Fügen Sie nginx hinzu Benutzer in die neue Benutzergruppe und ändern Sie /opt/rocket Verzeichnisberechtigungen, damit Nginx darauf zugreifen kann:

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

Installation von Rocket.Chat #

Wechseln Sie zur Benutzer-rocket indem Sie Folgendes eingeben:

sudo su - rocket

Laden Sie die neueste stabile Version von Rocket.Chat mit Curl herunter:

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

Sobald der Download abgeschlossen ist, extrahieren Sie das Archiv und benennen Sie das Verzeichnis in Rocket.Chat um :

tar zxf rocket.chat.tgzmv bundle Rocket.Chat

Wechseln Sie in den Rocket.Chat/programs/server Verzeichnis und installieren Sie alle erforderlichen npm Pakete:

cd Rocket.Chat/programs/servernpm install

Bevor Sie eine systemd-Einheit erstellen und einen Reverse-Proxy mit Nginxit einrichten, sollten Sie testen, ob die Installation erfolgreich war.

Beginnen Sie dazu mit dem Setzen der erforderlichen Umgebungsvariablen:

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

Als nächstes wechseln Sie wieder in den Rocket.Chat Verzeichnis und starten Sie den Rocket.Chat Server, indem Sie die folgenden Befehle ausgeben:

cd ../../node main.js

Wenn es keine Fehler gibt, sollten Sie die folgende Ausgabe sehen:

➔ +---------------------------------------------+
➔ |                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                  |
➔ |                                             |
➔ +---------------------------------------------+

Zu diesem Zeitpunkt ist Rocket.Chat auf Ihrem CentOS 7-Computer installiert. Stoppen Sie den Rocket.Chat-Server mit CTRL+C und fahren Sie mit den nächsten Schritten fort.

Erstellen Sie eine Systemd-Einheit #

Um Rocket.Chat als Dienst auszuführen, erstellen Sie einen rocketchat.service Unit-Datei in /etc/systemd/system/ Verzeichnis:

sudo nano /etc/systemd/system/rocketchat.service

Fügen Sie den folgenden Inhalt in die Datei ein:

/etc/systemd/system/rocketchat.service
[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 ROOT_URL=http://example.com:3000/ PORT=3000
ExecStart=/usr/local/bin/node /opt/rocket/Rocket.Chat/main.js

[Install]
WantedBy=multi-user.target

Speichern und schließen Sie die Datei.

Benachrichtigen Sie systemd, dass eine neue Unit-Datei erstellt wurde, und starten Sie den Rocket.Chat-Dienst, indem Sie Folgendes ausführen:

sudo systemctl daemon-reloadsudo systemctl start rocketchat

Überprüfen Sie den Dienststatus mit dem folgenden Befehl:

sudo systemctl status rocketchat

Die Ausgabe sollte in etwa so aussehen:

● 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

Wenn keine Fehler vorliegen, können Sie den Rocket.Chat-Dienst so aktivieren, dass er beim Booten automatisch gestartet wird:

sudo systemctl enable rocketchat

Richten Sie einen Reverse-Proxy mit Nginx ein #

Wenn Sie unseren Anleitungen zum Installieren von Nginx unter CentOS 7 und zum Sichern von Nginx mit Let’s Encrypt unter CentOS 7 gefolgt sind, sollte Nginx bereits installiert und mit einem SSL-Zertifikat konfiguriert sein.

Jetzt müssen wir einen neuen Serverblock für unsere Rocket.Chat-Installation erstellen:

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

Fügen Sie den folgenden Inhalt in die Datei ein:

/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;
    }
}

Laden Sie den Nginx-Dienst neu, damit die Änderungen wirksam werden:

sudo systemctl reload nginx

Rocket.Chat konfigurieren #

Öffnen Sie Ihren Browser und geben Sie Folgendes ein:http://chat.example.com .

Vorausgesetzt, dass die Installation erfolgreich ist, wird Ihnen der Rocket.Chat-Setup-Assistent angezeigt, der Sie durch die Einrichtung Ihres ersten Admin-Benutzers, die Konfiguration Ihrer Organisation und die Registrierung Ihres Servers führt, um kostenlose Push-Benachrichtigungen und mehr zu erhalten.

Im ersten Abschnitt des Ersteinrichtungsassistenten werden Sie aufgefordert, Ihren Admin-Benutzer einzurichten:

Wenn Sie mit der Eingabe der Admin-Informationen fertig sind, klicken Sie auf Continue Schaltfläche und geben Sie im nächsten Schritt Ihre Organisationsinformationen ein:

Im dritten Abschnitt des Ersteinrichtungsassistenten werden Sie aufgefordert, die Serverinformationen einzugeben:

Im nächsten Schritt werden Sie gefragt, ob Sie die vorkonfigurierten Gateways und Proxys von Rocket.Chat verwenden möchten. Wenn Sie diese Option auswählen, erhalten Sie Zugriff auf den Rocket.Chat Apps-Marktplatz und die meisten anderen Funktionen wie Push-Benachrichtigungen funktionieren einfach der Box.

Treffen Sie Ihre Wahl, klicken Sie auf Continue klicken, und Sie werden auf die folgende Seite weitergeleitet, die anzeigt, dass Ihr Arbeitsbereich einsatzbereit ist:

Klicken Sie auf Go to your workspace und Sie werden zum Rocket.Chat-Dashboard weitergeleitet, das als Admin-Benutzer angemeldet ist.


Cent OS
  1. So stellen Sie CDP auf einem CentOS-Server bereit

  2. So installieren Sie Live Helper Chat auf CentOS 7

  3. So installieren Sie Rocket.Chat unter CentOS 7

  4. So installieren Sie Rocket.Chat unter Ubuntu 16.04

  5. So installieren Sie Rocket.Chat unter Ubuntu 18.04

So installieren Sie R unter CentOS 8

So stellen Sie einen MongoDB Sharded Cluster unter CentOS 7 bereit

So installieren Sie Streamlit und stellen eine Streamlit-Anwendung unter CentOS 8 bereit

So installieren Sie Rocket.Chat unter CentOS 8

So installieren Sie Rocket.Chat auf Ubuntu 16.04 LTS

So stellen Sie Rocket Chat mit Nginx unter Ubuntu 18.04 bereit