Android

Hur man distribuerar rocket.chat på centos 7

How to install rocketchat on centos 7.8

How to install rocketchat on centos 7.8

Innehållsförteckning:

Anonim

Rocket.Chat är en komplett teamkommunikationsplattform, ett självhushålligt Slack-alternativ. Det är byggt med Meteor och erbjuder olika funktioner inklusive helpdeskchatt, videokonferenser, fildelning, röstmeddelanden, API och mer.

I den här tutorialen visar vi dig hur du installerar och distribuerar Rocket.Chat på en CentOS 7-server med Nginx som en SSL-omvänd proxy.

förutsättningar

Se till att du har uppfyllt följande förutsättningar innan du fortsätter med denna handledning:

  • CentOS 7-server, enligt de officiella Rocket.Chat-systemkraven behöver du minst 1G RAM.Du är inloggad som användare med sudo-privilegier. Du har ett domännamn som pekar på din server IP-adress., vi kommer att använda example.com Du har Nginx installerat, om inte kan du installera det genom att följa denna tutorial.An SSL-certifikat. Du kan generera en gratis från Let's Encrypt eller köpa en från en annan leverantör.

Installera beroenden

Installera följande paket som är nödvändiga för att bygga de nödvändiga npm modulerna:

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

Installera sedan Node.js och npm genom att skriva:

sudo yum install -y nodejs npm

Vid skrivandet av denna artikel är den rekommenderade Node.js-versionen för Rocket.Chat Node.js v8.11.3.

Ge följande kommandon för att installera n verktyget och den rekommenderade Node.js-versionen:

sudo npm install -g inherits n sudo n 8.11.3

MongoDB är en NoSQL-dokumentorienterad databas och används av Rocket.Chat som ett datalager. Rocket.Chat rekommenderar MongoDB version 3.6.

Vi kommer att installera MongoDB med yum från de officiella MongoDB-lagren.

Öppna din redigerare du väljer och skapa följande arkivfil:

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

Klistra in följande innehåll i filen:

/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

Spara filen och stäng textredigeraren.

För att installera MongoDB, kör följande kommando:

sudo yum install mongodb-org

När installationen är klar, aktivera och starta MongoDB-tjänsten:

sudo systemctl start mongod sudo systemctl enable mongod

Skapa ny systemanvändare

Skapa en ny användare och grupp som kör vår Rocket.Chat-instans. För enkelhetens namn kommer vi att använda användarraketten:

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

Lägg till nginx användaren i den nya användargruppen och ändra /opt/rocket så att Nginx kan komma åt den:

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

Installera Rocket.Chat

Byt till användarraketten genom att skriva:

sudo su - rocket

Ladda ner den senaste stabila versionen av Rocket.Chat med lock:

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

När nedladdningen är klar drar du ut arkivet och byter namn på katalogen till Rocket.Chat :

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

Byt till Rocket.Chat/programs/server och installera alla nödvändiga npm paket:

cd Rocket.Chat/programs/server npm install

Innan du skapar systemenhet och installerar en omvänd proxy med Nginx är det en bra idé att testa om installationen lyckades.

För att göra det börjar du med att ställa in de önskade miljövariablerna:

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

Därefter byter du tillbaka till Rocket.Chat katalogen och startar Rocket.Chat servern genom att utfärda följande kommandon:

cd../../ node main.js

Om det inte finns några fel bör du se följande utgång:

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

Just nu är Rocket.Chat installerat på din CentOS 7-maskin. Stoppa Rocket.Chat-servern med CTRL+C och fortsätt med nästa steg.

Skapa en systemd enhet

För att köra Rocket.Chat som en tjänst, skapa en rocketchat.service i /etc/systemd/system/ katalogen:

sudo nano /etc/systemd/system/rocketchat.service Klistra in följande innehåll i filen: /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

Spara och stäng filen.

Meddela systemdokumentet att en ny enhetsfil skapades och starta Rocket.Chat-tjänsten genom att köra:

sudo systemctl daemon-reload sudo systemctl start rocketchat

Kontrollera servicestatusen med följande kommando:

sudo systemctl status rocketchat

Utgången ska se ut så här:

● 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

Om det inte finns några fel kan du aktivera Rocket.Chat-tjänsten automatiskt att starta vid starttid:

sudo systemctl enable rocketchat

Ställ in en omvänd proxy med Nginx

Nu måste vi skapa ett nytt serverblock för vår Rocket.Chat-installation:

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

Klistra in följande innehåll i filen:

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

Ladda om Nginx-tjänsten så att ändringar träder i kraft:

sudo systemctl reload nginx

Konfigurera Rocket.Chat

Öppna din webbläsare och skriv: http://chat.example.com .

Förutsatt att installationen är framgångsrik kommer du att presenteras med Rocket.Chat Setup Wizard som kommer att guida dig genom att ställa in din första adminanvändare, konfigurera din organisation och registrera din server för att få gratis push-aviseringar och mer.

Det första avsnittet i guiden för första installationen kommer att be dig ställa in din administratörsanvändare:

Klicka på knappen Go to your workspace och du kommer att omdirigeras till Rocket.Chat-instrumentpanelen som är inloggad som administratörsanvändare.

Slutsats

Du har installerat Rocket.Chat på din CentOS 7-server. Du kan nu börja använda Rocket.Chat för att samarbeta med ditt team, dela filer och chatta i realtid.

rocketchat nodejs centos mongodb