Android

Hvordan distribuere rocket.chat på centos 7

How to install rocketchat on centos 7.8

How to install rocketchat on centos 7.8

Innholdsfortegnelse:

Anonim

Rocket.Chat er en komplett teamkommunikasjonsplattform, et selvbetjent Slack-alternativ. Den er bygget med Meteor og gir forskjellige funksjoner, inkludert helpdesk-chat, videokonferanser, fildeling, talemeldinger, API og mer.

I denne opplæringen vil vi vise deg hvordan du installerer og distribuerer Rocket.Chat på en CentOS 7-server med Nginx som en SSL-omvendt proxy.

Forutsetninger

Forsikre deg om at du har oppfylt følgende forutsetninger før du fortsetter med denne opplæringen:

  • CentOS 7-server, i henhold til de offisielle Rocket.Chat-systemkravene du trenger minst 1G RAM.Du er logget inn som bruker med sudo-rettigheter. Du har et domenenavn som peker til serverens IP-adresse., vi bruker example.com Du har Nginx installert, hvis ikke kan du installere det ved å følge denne opplæringen. Et SSL-sertifikat. Du kan generere en gratis fra Let's Encrypt, eller kjøpe en fra en annen leverandør.

Installer avhengigheter

Installer følgende pakker som er nødvendige for å bygge de nødvendige npm modulene:

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

Deretter installerer du Node.js og npm ved å skrive:

sudo yum install -y nodejs npm

I skrivende stund skriver denne artikkelen den anbefalte Node.js-versjonen for Rocket.Chat Node.js v8.11.3.

Gi følgende kommandoer for å installere n verktøyet og den anbefalte Node.js-versjonen:

sudo npm install -g inherits n sudo n 8.11.3

MongoDB er en NoSQL dokumentorientert database og den brukes av Rocket.Chat som et datalager. Rocket.Chat anbefaler MongoDB versjon 3.6.

Vi vil installere MongoDB ved å bruke yum fra de offisielle MongoDB-depotene.

Åpne redigeringsprogrammet du velger, og lag følgende arkivfil:

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

Lim inn følgende innhold 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

Lagre filen og lukk teksteditoren.

Kjør følgende kommando for å installere MongoDB:

sudo yum install mongodb-org

Når installasjonen er fullført, aktiverer og starter du MongoDB-tjenesten:

sudo systemctl start mongod sudo systemctl enable mongod

Opprett ny systembruker

Opprett en ny bruker og gruppe som kjører vår Rocket.Chat-forekomst. For enkelhets skyld vil vi navngi brukerraketten:

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

Legg til nginx brukeren i den nye brukergruppen og endre /opt/rocket slik at Nginx får tilgang til den:

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

Installere Rocket.Chat

Bytt til brukerraketten ved å skrive:

sudo su - rocket

Last ned den siste stabile versjonen av Rocket.Chat med krøll:

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

Når nedlastingen er fullført, pakke ut arkivet og gi nytt navn til katalogen til Rocket.Chat :

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

Endre til Rocket.Chat/programs/server og installer alle nødvendige npm pakker:

cd Rocket.Chat/programs/server npm install

Før du oppretter systemd enhet og setter opp en omvendt proxy med Nginx, er det lurt å teste om installasjonen var vellykket.

For å gjøre det, start med å stille inn de nødvendige miljøvariablene:

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

Deretter bytter du tilbake til Rocket.Chat katalogen og starter Rocket.Chat serveren ved å utgi følgende kommandoer:

cd../../ node main.js

Hvis det ikke er noen feil, bør du se følgende utdata:

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

På dette tidspunktet er Rocket.Chat installert på CentOS 7-maskinen din. Stopp Rocket.Chat-serveren med CTRL+C og fortsett med de neste trinnene.

Opprett en systemd enhet

Hvis du vil kjøre Rocket.Chat som en tjeneste, oppretter du en rocketchat.service i /etc/systemd/system/ directory:

sudo nano /etc/systemd/system/rocketchat.service Lim inn følgende innhold 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

Lagre og lukk filen.

Varsle systemd om at en ny enhetsfil ble opprettet og start Rocket.Chat-tjenesten ved å utføre:

sudo systemctl daemon-reload sudo systemctl start rocketchat

Kontroller servicestatusen med følgende kommando:

sudo systemctl status rocketchat

Utgangen skal se slik ut:

● 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

Hvis det ikke er noen feil, kan du aktivere Rocket.Chat-tjenesten automatisk ved oppstart:

sudo systemctl enable rocketchat

Sett opp en omvendt proxy med Nginx

Nå må vi lage en ny serverblokk for vår Rocket.Chat-installasjon:

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

Lim inn følgende innhold 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; } }

Last inn Nginx-tjenesten på nytt for at endringer skal tre i kraft:

sudo systemctl reload nginx

Konfigurere Rocket.Chat

Åpne nettleseren din og skriv: http://chat.example.com .

Forutsatt at installasjonen er vellykket, vil du bli presentert Rocket.Chat Setup Wizard, som vil guide deg gjennom å sette opp den første admin-brukeren, konfigurere organisasjonen og registrere serveren din for å motta gratis push-varsler og mer.

Den første delen av veiviseren for oppstart ber deg om å konfigurere administratorbrukeren:

Klikk på Go to your workspace knappen din, og du vil bli omdirigert til Rocket.Chat-dashbordet som er logget på som administrator.

Konklusjon

Du har installert Rocket.Chat på CentOS 7-serveren din. Du kan nå begynne å bruke Rocket.Chat for å samarbeide med teamet ditt, dele filer og chatte i sanntid.

rocketchat nodejs centos mongodb