GNU/Linux >> LINUX-Kenntnisse >  >> Ubuntu

So stellen Sie Rocket.Chat auf Ubuntu 18.04 bereit

Rocket.Chat ist eine Open-Source-Teamkommunikationsplattform, eine selbst gehostete Slack-Alternative. Es wurde mit dem Meteor-Framework entwickelt und bietet verschiedene Funktionen, darunter Helpdesk-Chat, Dateifreigabe, Videokonferenzen, Sprachnachrichten, API und mehr.

Rocket.Chat ist eine perfekte Lösung für Unternehmen und Communities, die ihr eigenes Chat-System hosten möchten.

In diesem Tutorial zeigen wir Ihnen, wie Sie Rocket.Chat auf einem Ubuntu 18.04-Server bereitstellen und Nginx als SSL-Reverse-Proxy konfigurieren.

Voraussetzungen #

Bevor Sie mit diesem Lernprogramm fortfahren, vergewissern Sie sich, dass Sie die folgenden Voraussetzungen erfüllen.

  • Ubuntu 18.04-Server. Laut den offiziellen Rocket.Chat-Systemanforderungen benötigen Sie mindestens 1 GB RAM.
  • Ein Domänenname, der auf Ihre Server-IP-Adresse verweist. Wir verwenden chat.example.com .
  • Nginx installiert, indem Sie diesem Tutorial folgen.
  • Sie haben ein SSL-Zertifikat für Ihre Domain installiert. Sie können ein kostenloses SSL-Zertifikat von Let’s Encrypt generieren, indem Sie diesem Tutorial folgen.

Installieren von Node.js #

Beginnen Sie mit der Aktualisierung Ihrer Systempaketliste:

sudo apt update

Installieren Sie Node.js, npm und alle anderen Abhängigkeiten, die zum Erstellen von npm-Paketen aus der Quelle erforderlich sind:

sudo apt install nodejs npm build-essential curl software-properties-common graphicsmagick

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

Wir werden n verwenden , ein npm-Paket, mit dem wir die Node.js-Versionen interaktiv verwalten können.

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

sudo npm install -g inherits nsudo n 8.11.3

Installieren von MongoDB #

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

Wir werden MongoDB aus den offiziellen MongoDB-Repositories installieren.

Importieren Sie den öffentlichen Schlüssel von MongoDB und aktivieren Sie das offizielle MongoDB-Repository mit dem folgenden Befehl:

sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 9DA31620334BD75D9DCB49F368818C72E52529D4sudo add-apt-repository 'deb [arch=amd64] https://repo.mongodb.org/apt/ubuntu bionic/mongodb-org/4.0 multiverse'

Sobald das apt-Repository aktiviert ist, aktualisieren Sie die Paketliste und installieren Sie MongoDB, indem Sie Folgendes eingeben:

sudo apt updatesudo apt install mongodb-org

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

sudo systemctl start mongodsudo systemctl enable mongod

Neuen Systembenutzer # erstellen

So erstellen Sie einen neuen Benutzer und eine neue Gruppe mit dem Namen rocket , das die Rocket.Chat-Instanz ausführt, geben Sie Folgendes ein:

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

Fügen Sie die www-data hinzu Benutzer in die neue Benutzergruppe und ändern Sie /opt/rocket Verzeichnisberechtigungen, damit Nginx auf die Rocket.Chat-Installation zugreifen kann:

sudo usermod -a -G rocket www-datasudo chmod 750 /opt/rocket

Installation von Rocket.Chat #

Wechseln Sie zur Benutzerrocket :

sudo su - rocket

Die folgenden Befehle gehen davon aus, dass Sie derzeit als Benutzer rocket arbeiten .

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

Um unsere Installation zu testen, bevor wir eine systemd-Einheit erstellen und einen Reverse-Proxy mit Nginx einrichten, setzen wir die erforderlichen Umgebungsvariablen und starten den Rocket.Chat-Server

export PORT=3000export ROOT_URL=http://0.0.0.0:3000/export MONGO_URL=mongodb://localhost:27017/rocketchat

Wechseln Sie zurück 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                  |
➔ |                                             |
➔ +---------------------------------------------+

Stoppen Sie den Rocket.Chat-Server mit CTRL+C .

Wechseln Sie zurück zu Ihrem sudo-Benutzer, indem Sie exit eingeben und fahren Sie mit den nächsten Schritten fort.

Erstellen Sie eine Systemd-Einheit #

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

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

Fügen Sie den folgenden Inhalt 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=https://chat.example.com PORT=3000
ExecStart=/usr/local/bin/node /opt/rocket/Rocket.Chat/main.js

[Install]
WantedBy=multi-user.target

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

sudo systemctl daemon-reloadsudo systemctl start rocketchat

Überprüfen Sie den Dienststatus, indem Sie Folgendes eingeben:

sudo systemctl status rocketchat
* rocketchat.service - Rocket.Chat server
   Loaded: loaded (/etc/systemd/system/rocketchat.service; disabled; vendor preset: enabled)
   Active: active (running) since Wed 2018-11-07 14:36:24 PST; 5s ago
 Main PID: 12693 (node)
    Tasks: 10 (limit: 2319)
   CGroup: /system.slice/rocketchat.service
           `-12693 /usr/local/bin/node /opt/rocket/Rocket.Chat/main.js

Aktivieren Sie schließlich den Rocket.Chat-Dienst so, dass er beim Booten automatisch mit dem folgenden Befehl gestartet wird:

sudo systemctl enable rocketchat

Richten Sie einen Reverse-Proxy mit Nginx ein #

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

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

Öffnen Sie Ihren Texteditor und erstellen Sie die folgende Datei:

sudo nano /etc/nginx/sites-available/chat.example.com.conf
/etc/nginx/sites-available/chat.example.com.conf
upstream rocketchat_backend {
  server 127.0.0.1:3000;
}

server {
    listen 80;
    server_name chat.example.com;

    include snippets/letsencrypt.conf;
    return 301 https://chat.example.com$request_uri;
}

server {
    listen 443 ssl http2;
    server_name chat.example.com;

    ssl_certificate /etc/letsencrypt/live/chat.example.com/fullchain.pem;
    ssl_certificate_key /etc/letsencrypt/live/chat.example.com/privkey.pem;
    ssl_trusted_certificate /etc/letsencrypt/live/chat.example.com/chain.pem;
    include snippets/ssl.conf;

    access_log /var/log/nginx/chat.example.com-access.log;
    error_log /var/log/nginx/chat.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;
    }
}

Aktivieren Sie den neuen Serverblock, indem Sie einen symbolischen Link von der Datei zum Verzeichnis „sites-enabled“ erstellen:

sudo ln -s /etc/nginx/sites-available/chat.example.com.conf /etc/nginx/sites-enabled/

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, die Installation ist erfolgreich, wird Ihnen der Rocket.Chat-Einrichtungsassistent angezeigt, der Sie durch die Einrichtung Ihres ersten Administratorbenutzers, 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 andere Funktionen wie Push-Benachrichtigungen funktionieren sofort .

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.


Ubuntu
  1. So aktualisieren Sie auf Ubuntu 20.04

  2. Wie installiere ich Let’s Chat auf Ubuntu 20.04?

  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 stellen Sie Mattermost auf Ubuntu 20.04 bereit

So installieren Sie Rocket.chat mit nginx-Reverse-Proxy unter Ubuntu 20.04

So installieren Sie Rocket.Chat auf Ubuntu 16.04 LTS

So installieren Sie Rocket.Chat auf Ubuntu 20.04 LTS

So stellen Sie einen TeamSpeak-Server auf Ubuntu 20.04 bereit

So stellen Sie Rocket Chat mit Nginx unter Ubuntu 18.04 bereit