GNU/Linux >> Znalost Linux >  >> Ubuntu

Jak nasadit Rocket.Chat na Ubuntu 18.04

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

Rocket.Chat je perfektní řešení pro společnosti a komunity, které chtějí hostovat svůj vlastní chatovací systém.

V tomto tutoriálu vám ukážeme, jak nasadit Rocket.Chat na server Ubuntu 18.04 a nakonfigurovat Nginx jako SSL reverzní proxy.

Předpoklady #

Než budete pokračovat v tomto kurzu, ujistěte se, že máte následující předpoklady.

  • Server Ubuntu 18.04. Podle oficiálních systémových požadavků Rocket.Chat potřebujete alespoň 1G RAM.
  • Název domény odkazující na IP adresu vašeho serveru. Použijeme chat.example.com .
  • Nginx byl nainstalován podle tohoto návodu.
  • Máte nainstalovaný certifikát SSL pro vaši doménu. Podle tohoto návodu si můžete vygenerovat bezplatný certifikát Let’s Encrypt SSL.

Instalace Node.js #

Začněte aktualizací seznamu systémových balíčků:

sudo apt update

Nainstalujte Node.js, npm a všechny ostatní závislosti potřebné pro vytváření balíčků npm ze zdroje:

sudo apt install nodejs npm build-essential curl software-properties-common graphicsmagick

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

Budeme používat n , balíček npm, který nám umožňuje interaktivně spravovat verze Node.js.

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

sudo npm install -g inherits nsudo n 8.11.3

Instalace MongoDB #

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

MongoDB nainstalujeme z oficiálních úložišť MongoDB.

Importujte veřejný klíč MongoDB a povolte oficiální úložiště MongoDB pomocí následujícího příkazu:

sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 9DA31620334BD75D9DCB49F368818C72E52529D4sudo add-apt-repository 'deb [arch=amd64] https://repo.mongodb.org/apt/ubuntu bionic/mongodb-org/4.0 multiverse'

Jakmile je repozitář apt povolen, aktualizujte seznam balíčků a nainstalujte MongoDB zadáním:

sudo apt updatesudo apt 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 #

Chcete-li vytvořit nového uživatele a skupinu s názvem rocket , která spustí instanci Rocket.Chat, zadejte:

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

Přidejte www-data uživatele do nové skupiny uživatelů a změňte /opt/rocket oprávnění k adresáři, aby Nginx mohl přistupovat k instalaci Rocket.Chat:

sudo usermod -a -G rocket www-datasudo chmod 750 /opt/rocket

Instalace Rocket.Chat #

Přejděte na uživatelerocket :

sudo su - rocket

Následující příkazy předpokládají, že aktuálně pracujete jako uživatel 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é balíčky npm:

cd Rocket.Chat/programs/servernpm install

Abychom otestovali naši instalaci před vytvořením systémové jednotky a nastavením reverzního proxy pomocí Nginxwe, nastavíme požadované proměnné prostředí a spustíme server Rocket.Chat

export PORT=3000export ROOT_URL=http://0.0.0.0:3000/export MONGO_URL=mongodb://localhost:27017/rocketchat

Změňte se 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                  |
➔ |                                             |
➔ +---------------------------------------------+

Zastavte server Rocket.Chat pomocí CTRL+C .

Přepněte zpět na uživatele sudo zadáním exit a pokračujte dalšími kroky.

Vytvořit jednotku Systemd #

Pro spuštění Rocket.Chat jako služby vytvoříme rocketchat.service soubor jednotky v /etc/systemd/system/ adresář.

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

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

[Install]
WantedBy=multi-user.target

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

sudo systemctl daemon-reloadsudo systemctl start rocketchat

Zkontrolujte stav služby zadáním:

sudo systemctl status rocketchat
* rocketchat.service - Rocket.Chat server
   Loaded: loaded (/etc/systemd/system/rocketchat.service; disabled; vendor preset: enabled)
   Active: active (running) since Wed 2018-11-07 14:36:24 PST; 5s ago
 Main PID: 12693 (node)
    Tasks: 10 (limit: 2319)
   CGroup: /system.slice/rocketchat.service
           `-12693 /usr/local/bin/node /opt/rocket/Rocket.Chat/main.js

Nakonec povolte automatické spouštění služby Rocket.Chat při spouštění pomocí následujícího příkazu:

sudo systemctl enable rocketchat

Nastavit reverzní proxy s Nginx #

Pokud jste postupovali podle našich pokynů, jak nainstalovat Nginx na Ubuntu 18.04 a jak zabezpečit Nginx pomocí příruček Let’s Encrypt na Ubuntu 18.04, měli byste již mít Nginx nainstalovaný a nakonfigurovaný s certifikátem SSL.

Nyní musíme vytvořit nový blok serveru Nginx pro instalaci Rocket.Chat.

Otevřete textový editor a vytvořte následující soubor:

sudo nano /etc/nginx/sites-available/chat.example.com.conf
/etc/nginx/sites-available/chat.example.com.conf
upstream rocketchat_backend {
  server 127.0.0.1:3000;
}

server {
    listen 80;
    server_name chat.example.com;

    include snippets/letsencrypt.conf;
    return 301 https://chat.example.com$request_uri;
}

server {
    listen 443 ssl http2;
    server_name chat.example.com;

    ssl_certificate /etc/letsencrypt/live/chat.example.com/fullchain.pem;
    ssl_certificate_key /etc/letsencrypt/live/chat.example.com/privkey.pem;
    ssl_trusted_certificate /etc/letsencrypt/live/chat.example.com/chain.pem;
    include snippets/ssl.conf;

    access_log /var/log/nginx/chat.example.com-access.log;
    error_log /var/log/nginx/chat.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;
    }
}

Povolte nový blok serveru vytvořením symbolického odkazu ze souboru na adresář s povolenými servery:

sudo ln -s /etc/nginx/sites-available/chat.example.com.conf /etc/nginx/sites-enabled/

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 dostávat bezplatná 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 tržiště aplikací Rocket.Chat a další funkce, jako jsou upozornění push, budou fungovat ihned po vybalení. .

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.


Ubuntu
  1. Jak nainstalovat Let's Chat na Ubuntu 20.04?

  2. Jak nainstalovat Rocket.Chat na CentOS 7

  3. Jak nainstalovat Rocket.Chat na Ubuntu 16.04

  1. Jak upgradovat na Ubuntu 20.04

  2. Jak nainstalovat R na Ubuntu 20.04

  3. Jak nainstalovat Rocket.Chat na Ubuntu 18.04

  1. Jak nasadit Odoo 11 na Ubuntu 18.04

  2. Jak nasadit Mattermost na Ubuntu 18.04

  3. Jak nasadit Odoo 12 na Ubuntu 18.04