IRC është i popullarizuar në mesin e zhvilluesve dhe përdoruesve të softuerit me burim të hapur. Një nga disavantazhet e IRC është kur nuk jeni në linjë, mund të humbisni biseda të rëndësishme ose përmendje të pseudonimit tuaj. Me Quassel dhe një VPS të vogël, mund të keni këmbëngulje IRC, të kompletuar me një ndërfaqe të bazuar në ueb dhe një ngarkesë të kërkueshme.
Unë do të supozoj se ju tashmë e dini se si të krijoni një VPS në panelin e kontrollit Vultr.
Së pari, do t'ju duhet të identifikoheni në panelin tuaj të kontrollit Vultr dhe të krijoni një VPS krejt të re. Në këtë shembull, unë kam vendosur një Debian 9, 2,50 $/muaj VPS. Ju mund të zgjidhni çdo madhësi, por synimi për këtë është që të jetë me kosto sa më të ulët. Do t'ju duhet t'i jepni një emër, si p.sh. quassel.example.netdhe sigurohuni që të keni konfiguruar një rekord DNS A.
Meqenëse këto udhëzime janë të përqendruara rreth Debian, do t'ju duhet t'i modifikoni ato pak nëse planifikoni të përdorni një shpërndarje të ndryshme Linux si Ubuntu ose CentOS.
Pasi VPS-ja juaj të funksionojë, do të dëshironi të instaloni disa paketa për të filluar gjërat themelore.
Do t'ju duhet të instaloni Quassel-Core, PostgreSQL, Apache dhe PHP, së bashku me disa biblioteka të tjera për të folur me serverin SQL.
apt-get install quassel-core postgresql libqt5sql5-psql apache2 php php-pgsql
Ju gjithashtu do të keni nevojë për Node.js. Pjesa e uebit e serverit tuaj personal të cloud IRC kërkon Node. Udhëzimet e plota për instalim mund të gjenden këtu , por këto janë të vetmet dy rreshta që ju nevojiten:
# curl -sL https://deb.nodesource.com/setup_8.x | bash -
# apt-get install -y nodejs
Më pas, do t'ju duhet të krijoni një bazë të dhënash për bërthamën Quassel. Kalo te përdoruesi Postgres dhe ekzekuto psql.
# su - postgres
$ psql
Pasi të jeni në kërkesën PostgreSQL, do t'ju duhet të krijoni një përdorues për Quassel dhe bazën e të dhënave të tij:
CREATE USER quassel ENCRYPTED PASSWORD 'somepassword';
CREATE DATABASE quassel WITH OWNER quassel ENCODING 'UTF8';
Tani që bazat janë konfiguruar, tani mund të nisni klientin Quassel dhe të lidheni me bërthamën tuaj.
Kur nisni klientin Quassel në kompjuterin tuaj lokal, do t'ju paraqitet një dialog lidhjeje. Futni adresën IP ose emrin e hostit të VPS-së tuaj dhe numrin e portit (parazgjedhja: 4242) dhe zgjidhni SSL. Nëse keni një server proxy, mund të futni detajet e proxy në dialog.
Gjatë lidhjes së parë, do të udhëzoheni përmes një magjistari tjetër për të konfiguruar bërthamën. Futni emrin e përdoruesit dhe fjalëkalimin tuaj të parë të Quasselcore. Përdoruesi i parë do të jetë administratori. Më pas, zgjidhni bazën e bazës së të dhënave PostgreSQL dhe jepni emrin e përdoruesit dhe fjalëkalimin e bazës së të dhënave Quassel siç përcaktohet në hapin e mëparshëm.
Pasi të keni konfiguruar bazat e bërthamës suaj, tani mund të konfiguroni pjesën e internetit. Kjo ju lejon të lidheni me bërthamën tuaj nga çdo shfletues uebi. Ne do të përdorim Quassel-Webserver .
Krijoni një përdorues për shërbimin në internet:
# useradd -d /opt/quassel-webserver -M -r quassel-webserver
Tani tërhiqni uebserverin Quassel dhe ndryshoni pronësinë në përdoruesin e krijuar më parë:
# git clone https://github.com/magne4000/quassel-webserver.git /opt/quassel-webserver
# chown -R quassel-webserver:quasselweb-server /opt/quassel-webserver
Më pas duhet të "instaloni" aplikacionin Node.js:
# su - quassel-webserver
$ npm install --production
Copy settings.jspër të settings-user.js  dhe për të ndryshuar host, forcedefaultdhe prefixpathvlerat:
host: 'localhost',
forcedefault: 'true',
prefixpath: '/app'
Ndërsa jeni në /opt/quassel-webservershtegun si rrënjë, mund të instaloni skedarin e shërbimit për Systemd.
# cp scripts/quassel-webserver.service /lib/systemd/system/quassel-webserver.service
Do t'ju duhet të modifikoni /lib/systemd/system/quassel-webserver.servicedhe ndryshoni ExecStartrreshtin:
ExecStart=/usr/bin/node /opt/quassel-webserver/app.js -l 127.0.0.1 -m http
Tani mund të aktivizoni dhe nisni uebserverin Quassel:
systemctl enable quassel-webserver.service
systemctl start quassel-webserver.service
Mund të kontrolloni që serveri kuasel-ueb po funksionon duke ekzekutuar systemctl status quassel-webserver.service. Nëse e shihni Active: active (running), jeni gati!
Më pas, ne do të konfigurojmë Apache.
Do t'ju duhet të aktivizoni disa module për të filluar, të tilla si proxy_http, proxy_wstunneldhe rewrite.
# a2enmod proxy_http proxy_wstunnel rewrite
Krijo një skedar të ri konfigurimi për Quassel:
# nano /etc/apache2/sites-available/quassel.conf
<VirtualHost *:80>
        ServerName quassel.example.net
        ServerAdmin [email protected]
        DocumentRoot /var/www/html
        ErrorLog ${APACHE_LOG_DIR}/error.log
        CustomLog ${APACHE_LOG_DIR}/access.log combined
        # Enable Rewrite
        RewriteEngine on
        # Redirect to /app by default
        RedirectMatch ^/$ /app
        # Quassel Webserver
        RewriteRule /app/p/socket(.*) ws://127.0.0.1:64080/app/p/socket$1 [P,L]
        ProxyPass /app http://127.0.0.1:64080/app
</VirtualHost>
Dhe aktivizoni faqen tuaj:
a2ensite quassel
Rinisni Apache për të aplikuar ndryshimet:
systemctl restart apache2
Nëse gjithçka ka shkuar mirë, tani mund të shfletoni në quassel-webservershembullin tuaj në http://quassel.example.net.
Më pas, ne do të konfigurojmë një kërkim të prapambetur . Kjo do të kërkojë modifikime në quassel-corebazën e të dhënave. Së pari, le të fillojmë me klonimin e kodit burimor:
# git clone https://github.com/justjanne/quassel-rest-search.git /opt/quassel-rest-search
Pasi të klonuar, ndërrojë emrin e file qrs_config.default.phppër të qrs_config.phpdhe të redaktoni skedarin. Ju do të duhet për të përcaktuar bazën e të dhënave tuaja db_name, db_user, db_pathdhe path_prefix. Duhet të përfundojë diçka si kjo:
<?php
define('db_host', 'localhost');
define('db_port', 5432);
define('db_name', 'quassel');
//Only change this if you know what you are doing
define('db_connector', null);
define('db_user', 'quassel');
define('db_pass', 'somepassword');
define('backend', 'pgsql-smart');
define('path_prefix', '/search');
Më pas, ne modifikojmë bazën e të dhënave për t'u përdorur nga quassel-rest-search:
Kalo te postgrespërdoruesi dhe ekzekuto psql:
# su - postgres
$ psql quassel
Së pari, shtoni një kolonë të re në tabelën e prapambetjes:
ALTER TABLE backlog ADD COLUMN tsv tsvector;
Së dyti, shtoni dy indekset e reja:
CREATE INDEX backlog_tsv_idx
  ON backlog
  USING gin(tsv);
CREATE INDEX backlog_tsv_filtered_idx
  ON backlog
  USING gin(tsv)
  WHERE (type & 23559) > 0;
Së treti, vendosni një shkas për të mbushur kolonën tsv:
CREATE TRIGGER tsvectorupdate
  BEFORE INSERT OR UPDATE
  ON backlog
  FOR EACH ROW
  EXECUTE PROCEDURE tsvector_update_trigger('tsv', 'pg_catalog.english', 'message');
Së katërti, plotësoni tsvkolonën " ":
UPDATE backlog SET messageid = messageid;
Tani mund të përditësoni konfigurimin Apache që kemi krijuar më parë dhe të shtoni:
# Quassel Search
Alias /search /opt/quassel-rest-search
<Directory /opt/quassel-rest-search>
        Require all granted
</Directory>
Rinis Apache:
systemctl restart apache2
Nëse gjithçka shkoi mirë, mund të lundroni http://quassel.example.net/searchdhe do të shihni një ekran identifikimi.
Tani mund të jetë një kohë e mirë për të siguruar ueb serverin tuaj duke përdorur Let's Encrypt. Detajet se si të instaloni dhe konfiguroni Let's Encrypt mund të gjenden në faqen e internetit të EFF ose këtu në dokumentet Vultr .
Në rast se jeni të shqetësuar për mbarimin e RAM-it, mund të dëshironi të aktivizoni shkëmbimin në VPS-në tuaj. Ju lutemi ndiqni këtë tutorial të shkëmbimit të Linux .