Rocket.Chat
Rocket.Chat to webowy serwer czatowy napisany w JavaScript. Jest on przeznaczony do komunikacji w organizacjach oraz firmach i można go uznać za zamiennik komercyjnych rozwiązań typu Slack. Do komunikacji z serwerem aplikacji Rocket.Chat można wykorzystać klienta uruchamianego w przeglądarce jak i dedykowane aplikacje klienckie dla: Android, iOS, Windows, MacOS X jak i linux.
Wstępna konfiguracja
Przed przystąpieniem do dalszych kroków należy:
- Zarezerwować jeden port TCP,
- Odblokować Binexec,
- Utworzyć bazę MongoDB,
- Dodać stronę www typu proxy wskazującą na uprzednio zarezerwowany port.
- wykonać polecenia:
export LD_LIBRARY_PATH=/usr/local/lib/gcc6 echo "export LD_LIBRARY_PATH=/usr/local/lib/gcc6" > ~/.bash_profile
Instalacja
Pobranie i rozpakowanie paczki:
fetch -o rocket.chat-latest.tgz https://download.rocket.chat/stable tar zxf rocket.chat-latest.tgz
Instalacja aplikacji:
export CXX=g++6 && export CC=gcc6 cd ~/bundle/programs/server/ && npm8 install
Wskazanie uprzednio zarezerwowanego portu (gdzie XXXX to przykładowy zarezerwowany wcześniej port):
export PORT=XXXX
Podanie danych dostępowych do bazy danych (należy podmienić: XXX nazwą uprzednio utworzonej bazy MongoDB, X numerem serwera oraz hasło do bazy):
export MONGO_URL='mongodb://moXXX_XXX:hasło@mongoX.mydevil.net:27017/moXXX_XXX'
Podanie adresu wcześniej dodanej strony www typu proxy.
export ROOT_URL='http://XXXX'
Stworzenie i podanie katalogu dla plików tymczasowych:
mkdir ~/bundle/tmp sed -i -e "s#/tmp/ufs#/home/${USER}/bundle/tmp/ufs#g" ~/bundle/programs/server/packages/jalik_ufs.js
Przebudowa modułu sharp
rm -R ~/bundle/programs/server/npm/node_modules/sharp/vendor cd ~/bundle/programs/server && npm8 rebuild
Uruchomienie serwera w screen:
screen cd ~/bundle/ && node8 main.js
Zalecane jest dodanie certyfikatu SSL dla strony (można skorzystać z darmowego certyfikatu Let's Encrypt w naszym panelu, w przypadku subdomen login.usermd.net nie ma potrzeby generowania certyfikatu) i włączenie wymuszania SSL dla strony. W przypadku braku włączonego SSL funkcjonalność będzie ograniczona. Polecenie (gdzie XXX to adres strony):
devil www options XXXX sslonly on
Więcej informacji na temat konfiguracji (w tym np. ustawienie rejestracji wymagającej potwierdzenie adresu e-mail) znajduje się w dokumentacji projektu.