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

So installieren Sie Rocket.Chat Server mit Nginx unter Ubuntu 20.04

Rocket.Chat ist eine webbasierte Chat-Anwendung, die in JavaScript geschrieben ist und das Meteor Full-Stack-Framework verwendet. Es ist eine Open-Source-Chat-Kollaborationsplattform, mit der Sie sicher in Echtzeit über mehrere Geräte hinweg kommunizieren können. Es wird selbst gehostet und unterstützt Sprach- und Video-Chat, Videokonferenzen, Dateifreigabe und vieles mehr. Es verfügt über eine Client-Anwendung, die für alle Plattformen verfügbar ist, einschließlich Windows, macOS, Linux, Android und iOS.

In diesem Tutorial zeigen wir Ihnen, wie Sie Rocket.Chat auf einem Ubuntu 20.04-Server installieren.

Voraussetzungen

  • Ein Server mit Ubuntu 20.04.
  • Ein gültiger Domainname, auf den Ihre Server-IP verweist.
  • Ein Root-Passwort wird auf dem Server konfiguriert.

Erste Schritte

Bevor Sie beginnen, wird empfohlen, Ihre Systempakete auf die neueste Version zu aktualisieren. Sie können sie mit dem folgenden Befehl aktualisieren:

apt-get update -y

Sobald Ihr System aktualisiert ist, installieren Sie andere erforderliche Abhängigkeiten mit dem folgenden Befehl:

apt-get install nginx gnupg2 git unzip build-essential curl software-properties-common graphicsmagick -y

Sobald alle Pakete installiert sind, können Sie mit dem nächsten Schritt fortfahren.

Installieren Sie Node.js

Als nächstes müssen Sie Node.js Version 12 in Ihrem System installieren. Standardmäßig ist es nicht im Standard-Repository von Ubuntu 20.04 verfügbar. Sie müssen also das offizielle Node.js-Repository zu Ihrem System hinzufügen. Sie können es mit dem folgenden Befehl hinzufügen:

curl -sL https://deb.nodesource.com/setup_12.x | bash -

Nachdem das Repository hinzugefügt wurde, installieren Sie Node.js mit dem folgenden Befehl:

apt-get install nodejs -y

Überprüfen Sie nach der Installation von Node.js die installierte Version von Node.js mit dem folgenden Befehl:

Knoten -v

Sie sollten die folgende Ausgabe erhalten:

v12.19.0

Wenn Sie fertig sind, können Sie mit dem nächsten Schritt fortfahren.

MongoDB installieren und konfigurieren

Als nächstes müssen Sie den MongoDB-Server in Ihrem System installieren. Standardmäßig ist die neueste Version von MongoDB nicht im Standard-Repository von Ubuntu 20.04 verfügbar. Sie müssen also das MongoDB-Repository in Ihrem System hinzufügen. Laden Sie zuerst den GPG-Schlüssel herunter und fügen Sie ihn mit dem folgenden Befehl hinzu:

apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 9DA31620334BD75D9DCB49F368818C72E52529D4

Sie sollten die folgende Ausgabe erhalten:

Ausführen:/tmp/apt-key-gpghome.Ku2thT4UnL/gpg.1.sh --keyserver hkp://keyserver.ubuntu.com:80 --recv 9DA31620334BD75D9DCB49F368818C72E52529D4gpg:key 68818C72E52529D4:public key "MongoDB.4 freigeben" Schlüssel <[email protected]>" importgpg:Gesamtzahl verarbeitet:1gpg:importiert:1

Fügen Sie als Nächstes das offizielle MongoDB-Repository mit dem folgenden Befehl hinzu:

add-apt-repository 'deb [arch=amd64] https://repo.mongodb.org/apt/ubuntu bionic/mongodb-org/4.0 multiverse'

Nachdem das Repository hinzugefügt wurde, installieren Sie die MongoDB mit dem folgenden Befehl:

apt-get install mongodb-org -y

Starten Sie nach der Installation von MongoDB den MongoDB-Dienst und aktivieren Sie ihn so, dass er beim Systemneustart gestartet wird:

systemctl start mongod
systemctl aktiviert mongod

Als Nächstes müssen Sie die Standardkonfigurationsdatei von MongoDB bearbeiten und den Replikatsatz definieren. Sie können dies mit dem folgenden Befehl tun:

nano /etc/mongod.conf

Fügen Sie die folgenden Zeilen hinzu:

replikation:replSetName:"replica01"

Speichern und schließen Sie die Datei und starten Sie dann den MongoDB-Dienst neu, um die Konfiguration anzuwenden:

systemctl startet Mongod neu

Melden Sie sich als Nächstes bei der MongoDB-Shell an und aktivieren Sie das Replikat mit dem folgenden Befehl:

mongo
> rs.initiate()

Sie sollten die folgende Ausgabe erhalten:

{ „info2“ :„keine Konfiguration angegeben. Verwenden einer Standardkonfiguration für das Set“, „me“ :„127.0.0.1:27017“, „ok“ :1, „operationTime“ :Timestamp(1605081439, 1) , "$clusterTime" :{ "clusterTime" :Timestamp(1605081439, 1), "signature" :{ "hash" :BinData(0,"AAAAAAAAAAAAAAAAAAAAAAAAAAA="), "keyId" :NumberLong(0) } }} 

Verlassen Sie als Nächstes die MongoDB-Shell mit dem folgenden Befehl:

>beenden

Wenn Sie fertig sind, können Sie mit dem nächsten Schritt fortfahren.

Installieren Sie Rocket.Chat

Als nächstes müssen Sie einen neuen Benutzer für Rocket.Chat erstellen und ihn zur www-data-Gruppe hinzufügen. Sie können dies mit dem folgenden Befehl tun:

useradd -m -U -r -d /opt/rocket rocket --shell /bin/bash
usermod -a -G rocket www-data

Geben Sie als Nächstes die richtigen Berechtigungen für das /opt/rocket-Verzeichnis:

chmod 750 /opt/rocket

Als nächstes wechseln Sie den Benutzer zu Rocket.Chat und laden Sie die neueste Version von Rocket.Chat mit dem folgenden Befehl herunter:

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

Sobald der Download abgeschlossen ist, extrahieren Sie die heruntergeladene Datei mit dem folgenden Befehl:

tar -xvzf rocket.chat.tgz

Als nächstes benennen Sie das extrahierte Verzeichnis mit Rocket.Chat mit dem folgenden Befehl um:

MV-Paket Rocket.Chat

Als nächstes ändern Sie das Verzeichnis zum Rocket.Chat-Server und installieren alle Node.js-Abhängigkeiten mit dem folgenden Befehl:

cd Rocket.Chat/programs/server
npm install

Sobald alle Abhängigkeiten installiert sind, können Sie den Rocket.Chat-Benutzer mit dem folgenden Befehl verlassen:

beenden

Erstellen Sie eine Systemd-Dienstdatei für Rocket.Chat

Als nächstes müssen Sie eine systemd-Dienstdatei erstellen, um den Rocket.Chat-Dienst zu verwalten. Sie können es mit dem folgenden Befehl erstellen:

nano /etc/systemd/system/rocketchat.service

Fügen Sie die folgenden Zeilen hinzu:

[Unit]Description=Rocket.Chat serverAfter=network.target nss-lookup.target mongod.target[Service]StandardOutput=syslogStandardError=syslogSyslogIdentifier=rocketchatUser=rocketEnvironment=MONGO_URL=mongodb://localhost:27017/rocketchat ROOT_URL=http://rocket.yourdomain.com PORT=3000ExecStart=/usr/bin/node /opt/rocket/Rocket.Chat/main.js[Install]WantedBy=multi-user.target

Speichern und schließen Sie die Datei und laden Sie den systemd-Daemon mit dem folgenden Befehl neu:

systemctl daemon-reload

Starten Sie als Nächstes den Rocket.Chat-Dienst und ermöglichen Sie ihm, beim Systemneustart mit dem folgenden Befehl zu starten:

systemctl Raketenchat starten
systemctl Raketenchat aktivieren

Sie können jetzt den Status des Rocket.Chats mit dem folgenden Befehl überprüfen:

systemctl status rocketchat

Wenn alles in Ordnung ist, sollten Sie die folgende Ausgabe erhalten:

? rocketchat.service - Rocket.Chat-Server Geladen:geladen (/etc/systemd/system/rocketchat.service; deaktiviert; Herstellervoreinstellung:aktiviert) Aktiv:aktiv (läuft) seit Mi 2020-11-11 07:58:01 UTC; Vor 24 Sekunden Haupt-PID:19951 (Knoten) Aufgaben:11 (Grenze:4691) Speicher:508,7 MB CGroup:/system.slice/rocketchat.service ??19951 /usr/bin/node /opt/rocket/Rocket.Chat/main .jsNov 11 07:58:21 ubuntu2004 rocketchat[19951]:? | MongoDB Version:4.0.21 | 11. November 07:58:21 ubuntu2004 rocketchat[19951]:? | MongoDB Engine:wiredTiger | 11. November 07:58:21 ubuntu2004 rocketchat[19951]:? | Plattform:Linux | 11. November 07:58:21 ubuntu2004 rocketchat[19951]:? | Prozessport:3000 | 11. November 07:58:21 ubuntu2004 rocketchat [19951]:? | Site-URL:http://rocket.yourdomain.com | 11. November 07:58:21 ubuntu2004 rocketchat[19951]:? | ReplicaSet OpLog:Aktiviert | 11. November 07:58:21 ubuntu2004 rocketchat [19951]:? | Commit-Hash:e37d7ba8ed |11. November 07:58:21 ubuntu2004 rocketchat[19951]:? | Commit Branch:HEAD | Nov 11 07:58:21 ubuntu2004 rocketchat[19951]:? | |11. November 07:58:21 ubuntu2004 rocketchat[19951]:? +------------------------------------------------------------- ---------+

Nginx für Rocket.Chat konfigurieren

Als nächstes müssen Sie Nginx als Reverse-Proxy für Rocket.Chat konfigurieren. Erstellen Sie dazu mit dem folgenden Befehl eine Konfigurationsdatei für den virtuellen Nginx-Host:

nano /etc/nginx/sites-available/rocketchat.conf

Fügen Sie die folgenden Zeilen hinzu:

upstream myrocketchat { server 127.0.0.1:3000;}server { listen 80; server_name rocket.ihredomain.com; access_log /var/log/nginx/access.log; error_log /var/log/nginx/error.log; Standort / { Proxy_pass http://myrocketchat/; Proxy_http_Version 1.1; Proxy_set_header Upgrade $http_upgrade; proxy_set_header Verbindung "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-Weiterleitung aus; }}

Speichern und schließen Sie die Datei und aktivieren Sie dann den virtuellen Nginx-Host mit dem folgenden Befehl:

ln -s /etc/nginx/sites-available/rocketchat.conf /etc/nginx/sites-enabled/

Überprüfen Sie als Nächstes Nginx mit dem folgenden Befehl auf Systex-Fehler:

nginx -t

Sie sollten die folgende Ausgabe erhalten:

nginx:Die Syntax der Konfigurationsdatei /etc/nginx/nginx.conf ist oknginx:Der Test der Konfigurationsdatei /etc/nginx/nginx.conf ist erfolgreich

Starten Sie abschließend den Nginx-Dienst neu, um die Konfigurationsänderungen zu übernehmen:

systemctl startet nginx neu

Sie können den Status des Nginx-Dienstes auch mit dem folgenden Befehl überprüfen:

systemctl status nginx

Sie sollten die folgende Ausgabe erhalten:

? nginx.service – Ein Hochleistungs-Webserver und ein Reverse-Proxy-Server :59:39 UTC; vor 4s Dokumente:man:nginx(8) Prozess:20034 ExecStartPre=/usr/sbin/nginx -t -q -g daemon on; master_process an; (code=beendet, status=0/SUCCESS) Prozess:20047 ExecStart=/usr/sbin/nginx -g daemon on; master_process an; (code=exited, status=0/SUCCESS) Main PID:20051 (nginx) Tasks:3 (limit:4691) Memory:3.5M CGroup:/system.slice/nginx.service ??20051 nginx:master process /usr/ sbin/nginx -g Daemon an; master_process an; ??20052 nginx:worker process ??20053 nginx:worker processNov 11 07:59:39 ubuntu2004 systemd[1]:Starten eines Hochleistungs-Webservers und eines Reverse-Proxy-Servers ... Nov 11 07:59:39 ubuntu2004 systemd[ 1]:Gestartet Ein Hochleistungs-Webserver und ein Reverse-Proxy-Server.

Wenn Sie fertig sind, können Sie mit dem nächsten Schritt fortfahren.

Zugriff auf Rocket.Chat

An diesem Punkt ist Rocket.Chat installiert und konfiguriert. Es ist Zeit, auf die Rocket.Chat-Weboberfläche zuzugreifen. Öffnen Sie Ihren Webbrowser und greifen Sie über die URL http://rocket.yourdomain.com auf Rocket.Chat zu .Sie werden auf die folgende Seite weitergeleitet:

Geben Sie Ihren Administratornamen, Ihre E-Mail-Adresse und Ihr Passwort ein und klicken Sie auf Weiter Taste. Sie sollten die folgende Seite sehen:

Geben Sie Art, Name, Branche, Größe und Land Ihrer Organisation an und klicken Sie auf Weiter Taste. Sie sollten die folgende Seite sehen:

Geben Sie den Namen Ihrer Website, die Sprache und den Servertyp an und klicken Sie auf Weiter Taste. Sie sollten die folgende Seite sehen:

Stimmen Sie den Nutzungsbedingungen und der Datenschutzrichtlinie zu und klicken Sie dann auf Weiter Taste. Sie sollten die folgende Seite sehen.

Klicken Sie auf Gehe zu Ihrem Arbeitsbereich Taste. Sie werden auf der folgenden Seite zum Rocket.Chat-Dashboard weitergeleitet:

Schlussfolgerung

Herzliche Glückwünsche! Sie haben Rocket.Chat mit Nginx als Reverse-Proxy erfolgreich installiert und konfiguriert. Sie können Rocket.Chat jetzt in der Produktionsumgebung installieren und mit Ihren Freunden und Ihrer Familie chatten.


Ubuntu
  1. So installieren Sie den HTTP-Git-Server mit Nginx unter Ubuntu 16.04

  2. So installieren Sie Nginx mit Google PageSpeed ​​unter Ubuntu 20.04

  3. So installieren Sie den HTTP-Git-Server mit Nginx unter Ubuntu 20.04

  4. So installieren Sie Rocket.Chat unter Ubuntu 16.04

  5. So installieren Sie Rocket.Chat unter Ubuntu 18.04

So installieren Sie FileRun unter Ubuntu 20.04 mit Apache/Nginx

So installieren Sie InvoiceNinja auf Ubuntu 18.04 Server mit Apache/Nginx

So installieren Sie InvoiceNinja auf Ubuntu 20.04 Server mit Apache/Nginx

So installieren Sie Nginx auf Ubuntu

So installieren Sie LetsEncrypt mit Nginx unter Ubuntu 15.04

So stellen Sie Rocket Chat mit Nginx unter Ubuntu 18.04 bereit