Rocket.Chat je bezplatná, open-source, samoobslužná chatovací aplikace, která vám umožňuje hostovat váš vlastní chatovací server. Je velmi podobný Slacku a nabízí podobné funkce včetně sdílení souborů, systémů prodeje vstupenek, videochatu a konferencí. S Rocket.Chat můžete chatovat se členy týmu, vytvářet kanály a soukromé skupiny, provádět videohovory a audiohovory, sdílet obrazovky a nahrávat soubory.
Funkce
- Výkonná rozhraní API
- Dálkové sledování videa
- Bezplatné audio a videokonference
- Synchronizace skupin LiveChat a LDAP
- Sdílení obrazovky a souborů
- Oznámení na ploše a na mobilu
- Veřejné a soukromé místnosti pro více uživatelů
Rocket.Chat je pro vás tou nejlepší volbou, pokud hledáte chatovací platformu s otevřeným zdrojovým kódem pro hostování v cloudu.
V tomto tutoriálu vám ukážeme, jak nainstalovat a nakonfigurovat Rocket.Chat na Ubuntu 18.04 VPS.
Předpoklady
- Nové Ubuntu 18.04 VPS na cloudové platformě Atlantic.Net.
- Platný název domény odkazující na vaši IP adresu VPS. V tomto tutoriálu použijeme node1.example.com.
Poznámka:Informace o správě DNS záznamů naleznete v Atlantic DNS Guide.
Krok 1 – Vytvořte cloudový server Atlantic.Net
Nejprve se přihlaste ke svému cloudovému serveru Atlantic.Net. Vytvořte nový server a jako operační systém vyberte Ubuntu 18.04 s alespoň 2 GB RAM. Připojte se ke svému cloudovému serveru přes SSH a přihlaste se pomocí přihlašovacích údajů zvýrazněných v horní části stránky.
Jakmile se přihlásíte na svůj server Ubuntu 18.04, spusťte následující příkaz a aktualizujte svůj základní systém nejnovějšími dostupnými balíčky.
apt-get update -y
Krok 2 – Instalace Node.js
Rocket.Chat vyžaduje Node.js a další závislosti pro vytváření balíčků npm ze zdroje. Nejprve přidejte úložiště Node.js spuštěním následujícího příkazu:
curl -sL https://deb.nodesource.com/setup_12.x — Node.js 12 LTS "Erbium"| bash -
Dále aktualizujte úložiště a nainstalujte Node.js spolu s požadovanými závislostmi pomocí následujícího příkazu:
apt-get update -y apt-get install nodejs build-essential curl software-properties-common graphicsmagick -y
Krok 3 – Instalace MongoDB
Rocket.Chat vyžaduje, aby byl na vašem serveru nainstalován MongoDB. Ve výchozím nastavení není nejnovější verze MongoDB dostupná ve výchozím úložišti Ubuntu 18.04, takže budete muset přidat úložiště MongoDB na svůj server.
Nejprve si stáhněte a přidejte oficiální klíč úložiště pomocí následujícího příkazu:
apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 9DA31620334BD75D9DCB49F368818C72E52529D4
Dále přidejte úložiště MongoDB spuštěním následujícího příkazu:
add-apt-repository 'deb [arch=amd64] https://repo.mongodb.org/apt/ubuntu bionic/mongodb-org/4.0 multiverse'
Jakmile je úložiště přidáno, aktualizujte úložiště a nainstalujte MongoDB pomocí následujícího příkazu:
apt-get update -y apt-get install mongodb-org -y
Jakmile je MongoDB nainstalována, spusťte službu MongoDB a povolte její spuštění po restartu systému:
systemctl start mongod systemctl enable mongod
netstat -ant
Výstup:
Active Internet connections (servers and established) Proto Recv-Q Send-Q Local Address Foreign Address State tcp 0 0 127.0.0.1:27017 0.0.0.0:* LISTEN tcp 0 0 127.0.0.53:53 0.0.0.0:* LISTEN tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN
Krok 4 – Konfigurace MongoDB
Rocket.Chat používá sadu replik MongoDB ke zlepšení výkonu, takže budete muset nakonfigurovat sadu replik MongoDB. Můžete jej nakonfigurovat pomocí následujícího příkazu:
echo -e "replication:\n replSetName: \"rs01\"" | tee -a /etc/mongod.conf
Poté restartujte službu MongoDB, aby se změny projevily:
systemctl restart mongod
Dále se přihlaste do prostředí MongoDB a spusťte sadu replik pomocí následujícího příkazu:
mongo rs.initiate()
Měli byste vidět následující výstup:
V tomto okamžiku je MongoDB nainstalován a nakonfigurován pomocí sady replik.
Chcete-li MongoDB opustit, zadejte příkaz Exit.
Krok 5 – Instalace Rocket.Chat
Před spuštěním se doporučuje vytvořit nového uživatele a skupinu pro spuštění Rocket.Chat.
Nejprve vytvořte nového uživatele s názvem rocket pomocí následujícího příkazu:
adduser rocket
Měli byste získat následující výstup:
Dále povolte Nginxu přístup k adresáři Rocket.Chat přidáním uživatele rakety do skupiny www-data:
usermod -a -G rocket www-data
Dále přepněte uživatele na raketu a stáhněte si nejnovější verzi Rocket.Chat pomocí následujícího příkazu:
su - rocket curl -L https://releases.rocket.chat/latest/download -o rocket.chat.tgz
Po dokončení stahování rozbalte stažený soubor pomocí následujícího příkazu:
tar zxf rocket.chat.tgz
Dále přesuňte extrahovaný adresář do Rocket.Chat pomocí následujícího příkazu:
mv bundle Rocket.Chat
Dále změňte adresář na adresář Rocket.Chat/programs/server a nainstalujte všechny požadované balíčky npm pomocí následujícího příkazu:
cd Rocket.Chat/programs/server npm install
Poznámka: Instalace Rocket.Chat zabere několik minut
Jakmile jsou všechny balíčky nainstalovány, měli byste vidět následující výstup:
Dále nastavte požadované proměnné prostředí pro testování instalace Rocket.Chat:
export PORT=3000 export ROOT_URL=http://0.0.0.0:3000/ export MONGO_URL=mongodb://localhost:27017/rocketchat export MONGO_OPLOG_URL=mongodb://localhost:27017/local?replSet=rs01
Dále změňte adresář na Rocket.Chat a spusťte server Rocket.Chat pomocí následujícího příkazu:
cd ~/Rocket.Chat node main.js
Poznámka: Dokončení tohoto procesu může trvat několik minut
Měli byste získat následující výstup:
Dále zastavte server Rocket.Chat pomocí CTRL+C a poté spusťte následující příkaz pro ukončení uživatele rakety:
exit
Krok 6 – Vytvořte soubor služby Systemd pro Rocket.Chat
Dále vytvořte soubor služby systemd pro spuštění a zastavení služby Rocket.Chat:
nano /etc/systemd/system/rocketchat.service
Přidejte následující řádky:
[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 MONGO_OPLOG_URL=mongodb://localhost:27017/local?replSet=rs01 ROOT_URL=http://node1.example.com PORT=3000 ExecStart=/usr/bin/nodejs /home/rocket/Rocket.Chat/main.js [Install] WantedBy=multi-user.target
Po dokončení uložte a zavřete soubor. Poté znovu načtěte démona systemd pomocí následujícího příkazu:
systemctl daemon-reload
Dále spusťte službu Rocket.Chat a povolte její spuštění po restartu systému:
systemctl start rocketchat systemctl enable rocketchat
Nyní můžete ověřit službu Rocket.Chat pomocí následujícího příkazu:
systemctl status rocketchat
Měli byste získat následující výstup:
Krok 7 – Nastavení reverzního proxy s Nginx
Dále budete muset nainstalovat a nakonfigurovat Nginx jako reverzní proxy pro předávání požadavků klientů přicházejících na portu 3000 na port Nginx 80.
Nejprve nainstalujte webový server Nginx pomocí následujícího příkazu:
apt-get install nginx -y
Dále vytvořte konfigurační soubor virtuálního hostitele Nginx pomocí následujícího příkazu:
nano /etc/nginx/sites-available/rocket
Přidejte následující řádky:
server { listen 80; server_name node1.example.com; access_log /var/log/nginx/rocket-access.log; error_log /var/log/nginx/rocket-error.log; location / { proxy_set_header X-Forwarded-Host $host; proxy_set_header X-Forwarded-Server $host; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_pass http://127.0.0.1:3000/; } }
Po dokončení uložte a zavřete soubor. Poté povolte virtuálního hostitele pomocí následujícího příkazu:
ln -s /etc/nginx/sites-available/rocket /etc/nginx/sites-enabled/
Nakonec restartujte službu Nginx, abyste použili změny konfigurace:
systemctl restart nginx
Krok 8 – Přístup k webovému rozhraní Rocket.Chat
Nyní otevřete webový prohlížeč a přejděte na adresu URL http://node1.example.com. Budete přesměrováni na průvodce nastavením Rocket.Chat:
Zadejte své uživatelské jméno, e-mail a heslo správce a klikněte na tlačítko Pokračovat knoflík. Měli byste vidět následující stránku:
Dále zadejte informace o vaší organizaci a klikněte na Pokračovat knoflík. Měli byste vidět následující stránku:
Dále zadejte informace o svém serveru a klikněte na Pokračovat knoflík. Měli byste vidět následující stránku:
Dále použijte předkonfigurované brány a proxy serveru Rocket.Chat a klikněte na tlačítko Pokračovat knoflík. Měli byste vidět následující stránku:
Nyní klikněte na Přejít do svého pracovního prostoru knoflík. Budete přesměrováni na výchozí panel Rocket.Chat:
Závěr
Gratulujeme! Úspěšně jste nainstalovali a nakonfigurovali server Rocket.Chat s Nginx jako reverzní proxy na Ubuntu 18.04 VPS. Můžete navštívit Rocket.Chat Doc a naučit se nový chatovací systém. Začněte s Rocket.Chat ještě dnes na Atlantic.Net VPS!