Android

Jak nasadit rocket.chat na centos 7

Rocket.Chat Demo

Rocket.Chat Demo

Obsah:

Anonim

Rocket.Chat je kompletní týmová komunikační platforma, alternativa Slack hostovaná hostitelem. Je postaven s Meteor a poskytuje různé funkce, včetně chatu s helpdeskem, videokonference, sdílení souborů, hlasové zprávy, API a další.

V tomto tutoriálu vám ukážeme, jak nainstalovat a nasadit Rocket.Chat na server CentOS 7 s Nginx jako SSL reverzní proxy.

Předpoklady

Před pokračováním v tomto kurzu se ujistěte, že jste splnili následující předpoklady:

  • Server CentOS 7, podle oficiálních systémových požadavků Rocket.Chat, potřebujete alespoň 1G RAM. Jste přihlášeni jako uživatel s právy sudo. Máte doménové jméno ukazující na IP adresu vašeho serveru., budeme používat example.com .Máte nainstalovaný Nginx, pokud ne, můžete jej nainstalovat podle tohoto tutoriálu.Na SSL certifikát. Můžete si vygenerovat bezplatný účet od Let's Encrypt, nebo si jej koupit od jiného poskytovatele.

Nainstalujte závislosti

Nainstalujte následující balíčky, které jsou nezbytné k vytvoření požadovaných modulů npm :

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

Dále nainstalujte Node.js a npm zadáním:

sudo yum install -y nodejs npm

V době psaní tohoto článku je doporučenou verzí Node.js pro Rocket.Chat Node.js v8.11.3.

Chcete-li nainstalovat obslužný program n a doporučenou verzi Node.js, zadejte následující příkazy:

sudo npm install -g inherits n sudo n 8.11.3

MongoDB je databáze zaměřená na dokumenty NoSQL a používá ji Rocket.Chat jako úložiště dat. Rocket.Chat doporučuje MongoDB verze 3.6.

Nainstalujeme MongoDB pomocí yum z oficiálních repozitářů MongoDB.

Otevřete editor výběru a vytvořte následující soubor úložiště:

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

Vložte do souboru následující obsah:

/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

Uložte soubor a zavřete textový editor.

Chcete-li nainstalovat MongoDB, spusťte následující příkaz:

sudo yum install mongodb-org

Po dokončení instalace povolte a spusťte službu MongoDB:

sudo systemctl start mongod sudo systemctl enable mongod

Vytvořit nového uživatele systému

Vytvořte nového uživatele a skupinu, která spustí naši instanci Rocket.Chat. Pro jednoduchost pojmenujeme uživatelskou rocket :

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

Přidejte uživatele nginx do nové skupiny uživatelů a změňte oprávnění adresáře /opt/rocket aby k němu Nginx měl přístup:

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

Instalace Rocket.Chat

Přepněte na uživatelskou rocket zadáním:

sudo su - rocket

Stáhněte si nejnovější stabilní verzi Rocket.Chat s curl:

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

Po dokončení stahování rozbalte archiv a přejmenujte adresář na Rocket.Chat :

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

Přejděte do adresáře Rocket.Chat/programs/server a nainstalujte všechny požadované balíčky npm :

cd Rocket.Chat/programs/server npm install

Před vytvořením jednotky systemd a nastavením reverzní proxy pomocí Nginx je vhodné vyzkoušet, zda byla instalace úspěšná.

Chcete-li to provést, začněte nastavením požadovaných proměnných prostředí:

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

Dále Rocket.Chat zpět do adresáře Rocket.Chat a spusťte server Rocket.Chat zadáním následujících příkazů:

cd../../ node main.js

Pokud neexistují žádné chyby, měli byste vidět následující výstup:

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

V tomto okamžiku je na vašem počítači CentOS 7 nainstalován produkt Rocket.Chat. Zastavte server Rocket.Chat pomocí CTRL+C a pokračujte dalšími kroky.

Vytvořte jednotku Systemd

Chcete-li spustit službu Rocket.Chat jako službu, vytvořte soubor jednotky rocketchat.service v adresáři /etc/systemd/system/ :

sudo nano /etc/systemd/system/rocketchat.service Vložte následující obsah do souboru: /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

Uložte a zavřete soubor.

Upozorněte systém, že byl vytvořen nový soubor jednotky a spusťte službu Rocket.Chat spuštěním:

sudo systemctl daemon-reload sudo systemctl start rocketchat

Zkontrolujte stav služby pomocí následujícího příkazu:

sudo systemctl status rocketchat

Výstup by měl vypadat asi takto:

● 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

Pokud neexistují žádné chyby, můžete povolit automatické spuštění služby Rocket.Chat v době spuštění:

sudo systemctl enable rocketchat

Nastavit reverzní proxy pomocí Nginx

Nyní musíme vytvořit nový blok serveru pro naši instalaci Rocket.Chat:

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

Vložte do souboru následující obsah:

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

Znovu načtěte službu Nginx, aby se změny projevily:

sudo systemctl reload nginx

Konfigurace Rocket.Chat

Otevřete prohlížeč a zadejte: http://chat.example.com .

Pokud bude instalace úspěšná, zobrazí se průvodce nastavením Rocket.Chat, který vás provede nastavením prvního administrátora, konfigurací vaší organizace a registrací serveru pro přijímání bezplatných oznámení push a další.

První část průvodce počátečním nastavením vás požádá o nastavení administrátora:

Klikněte na tlačítko Go to your workspace a budete přesměrováni na panel Rocket.Chat přihlášený jako uživatel admin.

Závěr

Úspěšně jste nainstalovali Rocket.Chat na svůj server CentOS 7. Nyní můžete začít používat Rocket.Chat ke spolupráci se svým týmem, sdílení souborů a chatování v reálném čase.

rocketchat nodejs centos mongodb