GNU/Linux >> Znalost Linux >  >> Cent OS

Jak nasadit Rocket.Chat na CentOS 7

Rocket.Chat je kompletní týmová komunikační platforma, alternativa Slack s vlastním hostitelem. Je postaven s Meteorem a poskytuje různé funkce včetně chatu na helpdesku, videokonferencí, sdílení souborů, hlasových zpráv, API a dalších.

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 #

Než budete pokračovat v tomto kurzu, ujistěte se, ž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.
  • Název domény odkazuje na IP adresu vašeho serveru. V tomto článku budeme používat example.com .
  • Máte nainstalovaný Nginx, pokud ne, můžete jej nainstalovat podle tohoto návodu.
  • Certifikát SSL. Můžete si zdarma vygenerovat jeden z Let’s Encrypt nebo si ho koupit od jiného poskytovatele.

Instalovat závislosti #

Nainstalujte následující balíčky, které jsou nezbytné k vytvoření požadovaného npm moduly:

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čená verze Node.js pro Rocket.Chat Node.js v8.11.3.

Chcete-li nainstalovat n, zadejte následující příkazy nástroj a doporučená verze Node.js:

sudo npm install -g inherits nsudo n 8.11.3

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

Nainstalujeme MongoDBusing yum z oficiálních úložišť MongoDB.

Otevřete svůj editor a vytvořte následující soubor úložiště:

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

Do souboru vložte následující obsah:

/etc/yum.repos.d/mongodb-org.repo
[mongodb-org-3.6]
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 mongodsudo systemctl enable mongod

Vytvořit nového systémového uživatele #

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

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

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

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

Instalace Rocket.Chat #

Přepněte na uživatelskourocket 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

Jakmile je stahování dokončeno, rozbalte archiv a přejmenujte adresář na Rocket.Chat :

tar zxf rocket.chat.tgzmv bundle Rocket.Chat

Změňte se na Rocket.Chat/programs/server adresář a nainstalujte všechny požadované npm balíčky:

cd Rocket.Chat/programs/servernpm install

Před vytvořením systemd unit a nastavením reverzního proxy pomocí Nginxit je dobré otestovat, zda byla instalace úspěšná.

Chcete-li tak učinit, začněte nastavením požadovaných proměnných prostředí:

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

Dále se změňte zpět na Rocket.Chat a spusťte Rocket.Chat serveru zadáním následujících příkazů:

cd ../../node main.js

Pokud nejsou žá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 Rocket.Chat. Zastavte server Rocket.Chat pomocí CTRL+C a pokračujte dalšími kroky.

Vytvořit systémovou jednotku #

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

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

Do souboru vložte následující obsah:

/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=http://example.com:3000/ PORT=3000
ExecStart=/usr/local/bin/node /opt/rocket/Rocket.Chat/main.js

[Install]
WantedBy=multi-user.target

Uložte a zavřete soubor.

Informujte systemd, že byl vytvořen nový soubor jednotky a spusťte službu Rocket.Chat provedením:

sudo systemctl daemon-reloadsudo systemctl start rocketchat

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

sudo systemctl status rocketchat

Výstup by měl vypadat nějak 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 se nevyskytnou žádné chyby, můžete povolit automatické spuštění služby Rocket.Chat při spouštění:

sudo systemctl enable rocketchat

Nastavit reverzní proxy s Nginx #

Pokud jste postupovali podle našich pokynů, jak nainstalovat Nginx na CentOS 7 a jak zabezpečit Nginx pomocí průvodců Let’s Encrypt na CentOS 7, měli byste již mít Nginx nainstalovaný a nakonfigurovaný s certifikátem SSL.

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

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

Do souboru vložte 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 .

Za předpokladu, že instalace bude úspěšná, zobrazí se vám průvodce nastavením Rocket.Chat, který vás provede nastavením prvního administrátora, konfigurací vaší organizace a registrací vašeho serveru, abyste mohli zdarma dostávat oznámení push a další.

V první části průvodce počátečním nastavením budete požádáni, abyste nastavili uživatele správce:

Po zadání údajů o správci klikněte na Continue a v dalším kroku zadejte informace o vaší organizaci:

Třetí část průvodce počátečním nastavením vás vyzve k zadání informací o serveru:

V dalším kroku budete dotázáni, zda chcete používat předkonfigurované brány a proxy serveru Rocket.Chat. Výběrem této možnosti získáte přístup na trh aplikací Rocket.Chat a většina ostatních funkcí, jako jsou upozornění push, bude fungovat. krabičky.

Vyberte si, klikněte na Continue a budete přesměrováni na následující stránku, která označuje, že váš pracovní prostor je připraven k použití:

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


Cent OS
  1. Jak nainstalovat Rocket.Chat na CentOS 7

  2. Jak nainstalovat Rocket.Chat na Ubuntu 16.04

  3. Jak nainstalovat Rocket.Chat na Ubuntu 18.04

  1. Jak nasadit CDP na server CentOS

  2. Jak nainstalovat Live Helper Chat na CentOS 7

  3. Jak nasadit Ruby + Passenger + Nginx na CentOS Linux

  1. Jak nainstalovat PHP 7, 7.2 a 7.3 na CentOS 7

  2. Jak nainstalovat Java 11 &12 na CentOS 7

  3. Jak nainstalovat Wine 4.0 na CentOS 7