Hvernig á að setja upp NodeBB spjallborð á Fedora 28

NodeBB er vettvangur sem byggir á Node.js. Það notar vefinnstungur fyrir tafarlaus samskipti og rauntíma tilkynningar. NodeBB frumkóði er hýst opinberlega á Github . Þessi handbók mun leiða þig í gegnum NodeBB uppsetningarferlið á nýju Fedora 28 Vultr tilviki með því að nota Node.js, MongoDB sem gagnagrunn, Nginx sem öfugt umboð og Acme.sh fyrir SSL vottorð.

Kröfur

NodeBB krefst þess að eftirfarandi hugbúnaður sé uppsettur:

  • Git
  • Node.js útgáfa 6.9.0 eða nýrri
  • MongoDB útgáfa 2.6 eða nýrri
  • Nginx
  • Lágmark 1024MB vinnsluminni
  • Lén með A/ AAAAskrár sett upp

Áður en þú byrjar

Athugaðu Fedora útgáfuna.

cat /etc/fedora-release
# Fedora release 28 (Twenty Eight)

Búðu til nýjan notandareikning sem ekki er rót með sudoaðgangi og skiptu yfir í hann.

useradd -c "John Doe" johndoe && passwd johndoe
usermod -aG wheel johndoe
su - johndoe

ATH : Skiptu út johndoefyrir notendanafnið þitt.

Settu upp tímabeltið.

timedatectl list-timezones
sudo timedatectl set-timezone 'Region/City'

Gakktu úr skugga um að kerfið þitt sé uppfært.

sudo dnf check-upgrade || sudo dnf upgrade -y

Settu upp nauðsynlega pakka.

sudo dnf install -y git wget vim gcc-c++ make

Til einföldunar skaltu slökkva á SELinux og Firewall.

sudo setenforce 0
sudo systemctl stop firewalld
sudo systemctl disable firewalld

Settu upp Node.js

NodeBB er knúið áfram af Node.js og því þarf að setja það upp. Mælt er með uppsetningu á núverandi LTS útgáfu af Node.js.

Settu upp Node.js.

sudo dnf install -y nodejs

Staðfestu uppsetningu á Node.js og npm.

node -v && npm -v
# v8.11.3
# 5.6.0

Settu upp og stilltu MongoDB

MongoDB er sjálfgefinn gagnagrunnur fyrir NodeBB.

Settu upp MongoDB.

sudo dnf install -y mongodb mongodb-server

Athugaðu útgáfuna.

mongo --version | head -n 1 && mongod --version | head -n 1
# MongoDB shell version v3.6.3
# db version v3.6.3

Virkjaðu og ræstu MongoDB þjónustuna.

sudo systemctl enable mongod.service
sudo systemctl start mongod.service

Búðu til MongoDB gagnagrunn og notanda fyrir NodeBB.

Tengstu fyrst við MongoDB netþjóninn.

mongo

Skiptu yfir í innbyggða admingagnagrunninn.

> use admin

Búðu til stjórnunarnotanda.

> db.createUser( { user: "admin", pwd: "<Enter a secure password>", roles: [ { role: "readWriteAnyDatabase", db: "admin" }, { role: "userAdminAnyDatabase", db: "admin" } ] } )

ATHUGIÐ: Skiptu um staðgengil <Enter a secure password>fyrir þitt eigið lykilorð.

Bættu við nýjum gagnagrunni sem heitir nodebb.

> use nodebb

Gagnagrunnurinn verður búinn til og samhengi skipt yfir í nodebb. Næst skaltu búa til nodebbnotanda með viðeigandi réttindi.

> db.createUser( { user: "nodebb", pwd: "<Enter a secure password>", roles: [ { role: "readWrite", db: "nodebb" }, { role: "clusterMonitor", db: "admin" } ] } )

ATHUGIÐ: Aftur skaltu skipta um staðgengil <Enter a secure password>fyrir þitt eigið lykilorð.

Farðu úr Mongo skelinni.

> quit()

Endurræstu MongoDB og staðfestu að stjórnunarnotandinn sem var búinn til áður geti tengst.

sudo systemctl restart mongod.service
mongo -u admin -p your_password --authenticationDatabase=admin

Settu upp og stilltu Nginx

Settu upp Nginx.

sudo dnf install -y nginx

Athugaðu útgáfuna.

sudo nginx -v
# nginx version: nginx/1.12.1

Virkjaðu og ræstu Nginx.

sudo systemctl enable nginx.service
sudo systemctl start nginx.service

NodeBB keyrir sjálfgefið á port 4567. Til að forðast að slá inn http://example.com:4567munum við stilla Nginx sem öfugt umboð fyrir NodeBB forritið. Sérhver beiðni um höfn 80eða 443( ef SSL er notað ) verður send í höfn 4567.

Keyrðu sudo vim /etc/nginx/conf.d/nodebb.confog fylltu það út með grunnstillingu um öfugri proxy hér að neðan.

server {

  listen [::]:80;
  listen 80;

  server_name forum.example.com;

  root /usr/share/nginx/html;

  client_max_body_size 50M;

  location /.well-known/acme-challenge/ {
    allow all;
  }

  location / {
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header X-Forwarded-Proto $scheme;
    proxy_set_header Host $http_host;
    proxy_hide_header X-Powered-By;
    proxy_set_header X-Nginx-Proxy true;

    proxy_pass http://127.0.0.1:4567;
    proxy_redirect off;

    # Socket.IO Support
    proxy_http_version 1.1;
    proxy_set_header Upgrade $http_upgrade;
    proxy_set_header Connection "upgrade";
  }

}

Í stillingunni hér að ofan, uppfærðu server_nametilskipunina með léninu/hýsingarnafninu þínu.

Athugaðu stillinguna.

sudo nginx -t

Endurhlaða Nginx.

sudo systemctl reload nginx.service

Settu upp Acme.sh viðskiptavin og fáðu Let's Encrypt vottorð (valfrjálst)

Það er ekki nauðsynlegt að tryggja spjallborðið þitt með HTTPS, en það mun tryggja umferð vefsvæðisins þíns. Acme.sh er hreinn unix skel hugbúnaður til að fá SSL vottorð frá Let's Encrypt með núll ósjálfstæði.

Sæktu og settu upp Acme.sh.

sudo mkdir /etc/letsencrypt
git clone https://github.com/Neilpang/acme.sh.git
cd acme.sh
sudo ./acme.sh --install --home /etc/letsencrypt --accountemail [email protected]
cd ~
source ~/.bashrc

Athugaðu útgáfuna.

/etc/letsencrypt/acme.sh --version
# v2.7.9

Fáðu RSA og ECDSA vottorð fyrir forum.example.comlénið/hýsingarheitið.

# RSA 2048
sudo /etc/letsencrypt/acme.sh --issue --home /etc/letsencrypt -d forum.example.com --webroot /usr/share/nginx/html --reloadcmd "sudo systemctl reload nginx.service" --accountemail [email protected] --ocsp-must-staple --keylength 2048
# ECDSA/ECC P-256
sudo /etc/letsencrypt/acme.sh --issue --home /etc/letsencrypt -d forum.example.com --webroot /usr/share/nginx/html --reloadcmd "sudo systemctl reload nginx.service" --accountemail [email protected] --ocsp-must-staple --keylength ec-256

Eftir að hafa keyrt skipanirnar hér að ofan verða vottorð þín og lyklar í eftirfarandi möppum:

  • RSA: /etc/letsencrypt/forum.example.com
  • ECC/ECDSA: /etc/letsencrypt/forum.example.com_ecc

Eftir að hafa fengið vottorð frá Let's Encrypt þurfum við að stilla Nginx til að nota þau.

Keyrðu sudo vim /etc/nginx/conf.d/nodebb.confaftur og stilltu Nginx sem HTTPS öfugt umboð.

server {

  listen [::]:443 ssl http2;
  listen 443 ssl http2;
  listen [::]:80;
  listen 80;

  server_name forum.example.com;

  root /usr/share/nginx/html;

  client_max_body_size 50M;

  location /.well-known/acme-challenge/ {
    allow all;
  }

  # RSA
  ssl_certificate /etc/letsencrypt/forum.example.com/fullchain.cer;
  ssl_certificate_key /etc/letsencrypt/forum.example.com/forum.example.com.key;
  # ECDSA
  ssl_certificate /etc/letsencrypt/forum.example.com_ecc/fullchain.cer;
  ssl_certificate_key /etc/letsencrypt/forum.example.com_ecc/forum.example.com.key;

  location / {
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header X-Forwarded-Proto $scheme;
    proxy_set_header Host $http_host;
    proxy_set_header X-NginX-Proxy true;

    proxy_pass http://127.0.0.1:4567;
    proxy_redirect off;

    # Socket.IO Support
    proxy_http_version 1.1;
    proxy_set_header Upgrade $http_upgrade;
    proxy_set_header Connection "upgrade";
  }

}

Athugaðu stillinguna.

sudo nginx -t

Endurhlaða Nginx.

sudo systemctl reload nginx.service

Settu upp NodeBB

Búðu til rótarskrá skjalsins.

sudo mkdir -p /var/www/nodebb

Breyttu eignarhaldi /var/www/nodebbmöppunnar í johndoe.

sudo chown -R johndoe:johndoe /var/www/nodebb

Farðu í rótarmöppuna skjalsins.

cd /var/www/nodebb

Klónaðu nýjasta NodeBB inn í rótarmöppuna skjalsins.

git clone -b v1.10.x https://github.com/NodeBB/NodeBB.git .

Keyrðu NodeBB uppsetningarskipunina og svaraðu hverri spurningu þegar beðið er um það.

./nodebb setup

Eftir að uppsetningu NodeBB er lokið skaltu keyra ./nodebb starttil að ræsa NodeBB netþjóninn þinn handvirkt.

./nodebb start

Eftir þessa skipun muntu geta opnað spjallborðið þitt í vafranum þínum.

Keyra NodeBB sem kerfisþjónustu

Þegar ræst er í gegnum ./nodebb startmun NodeBB ekki sjálfkrafa ræsa aftur þegar kerfið endurræsir. Til að forðast það verðum við að setja upp NodeBB sem kerfisþjónustu.

Ef það er í gangi skaltu stöðva NodeBB.

./nodebb stop

Búðu til nýjan nodebbnotanda.

sudo useradd nodebb

Breyttu eignarhaldi /var/www/nodebbmöppunnar í nodebbnotanda.

sudo chown -R nodebb:nodebb /var/www/nodebb

Búðu til nodebb.servicestillingarskrá fyrir systemd unit. Þessi einingaskrá mun sjá um ræsingu NodeBB djöfulsins. Keyrðu sudo vim /etc/systemd/system/nodebb.serviceog fylltu út skrána með eftirfarandi efni.

[Unit]
Description=NodeBB
Documentation=https://docs.nodebb.org
After=system.slice multi-user.target mongod.service

[Service]
Type=forking
User=nodebb

StandardOutput=syslog
StandardError=syslog
SyslogIdentifier=nodebb

Environment=NODE_ENV=production
WorkingDirectory=/var/www/nodebb
PIDFile=/var/www/nodebb/pidfile
ExecStart=/usr/bin/env node loader.js
Restart=always

[Install]
WantedBy=multi-user.target

ATHUGIÐ: Stilltu notendanafn og skráarslóðir í samræmi við valin nöfn.

Virkjaðu nodebb.servicevið endurræsingu og byrjaðu strax nodebb.service.

sudo systemctl enable nodebb.service
sudo systemctl start nodebb.service

Athugaðu nodebb.servicestöðuna.

sudo systemctl status nodebb.service
sudo systemctl is-enabled nodebb.service

Það er það. NodeBB tilvikið þitt er nú í gangi.


Hvernig á að setja upp BigTree CMS á Fedora 26 LAMP VPS

Hvernig á að setja upp BigTree CMS á Fedora 26 LAMP VPS

Að nota annað kerfi? BigTree CMS 4.2 er hraðvirkt og létt, ókeypis og opinn uppspretta, vefumsjónarkerfi (CMS) fyrir fyrirtæki með víðtæka

Hvernig á að setja upp Koel á Fedora 28

Hvernig á að setja upp Koel á Fedora 28

Að nota annað kerfi? Koel er einfalt vefbundið persónulegt hljóðstraumsforrit skrifað í Vue á biðlarahlið og Laravel á miðlarahlið. Koe

Hvernig á að setja upp Grav CMS á Fedora 28

Hvernig á að setja upp Grav CMS á Fedora 28

Að nota annað kerfi? Grav er opinn uppspretta flatskrár CMS skrifað í PHP. Grav frumkóði er hýst opinberlega á GitHub. Þessi handbók mun sýna þér hvernig t

Að setja upp Akaunting á Fedora 28

Að setja upp Akaunting á Fedora 28

Að nota annað kerfi? Akaunting er ókeypis, opinn uppspretta og bókhaldshugbúnaður á netinu hannaður fyrir lítil fyrirtæki og sjálfstæðismenn. Það er byggt vit

Hvernig á að setja upp Tiny Tiny RSS Reader á Fedora 26 LAMP VPS

Hvernig á að setja upp Tiny Tiny RSS Reader á Fedora 26 LAMP VPS

Að nota annað kerfi? Tiny Tiny RSS Reader er ókeypis og opinn uppspretta sjálf-hýstinn fréttastraumur (RSS/Atom) lesandi og safnari, hannaður til að dreifa

Hvernig á að setja upp InvoicePlane á Fedora 28

Hvernig á að setja upp InvoicePlane á Fedora 28

Að nota annað kerfi? InvoicePlane er ókeypis og opinn uppspretta innheimtuforrit. Frumkóðann hans er að finna á þessari Github geymslu. Þessi leiðarvísir

Settu upp Minecraft netþjón á Fedora 26

Settu upp Minecraft netþjón á Fedora 26

Að nota annað kerfi? Í þessari kennslu mun ég leiðbeina þér í því að setja upp Minecraft netþjón á afkastamikilli SSD VPS hjá Vultr. Þú munt læra hó

Hvernig á að setja saman Nginx frá uppruna á Fedora 25

Hvernig á að setja saman Nginx frá uppruna á Fedora 25

Að nota annað kerfi? NGINX er hægt að nota sem HTTP/HTTPS miðlara, öfugur umboðsþjónn, póstþjónn, álagsjafnari, TLS terminator eða cachin

Hvernig á að setja upp Pagekit 1.0 CMS á Fedora 26 LAMP VPS

Hvernig á að setja upp Pagekit 1.0 CMS á Fedora 26 LAMP VPS

Að nota annað kerfi? Pagekit 1.0 CMS er fallegt, mát, útvíkkanlegt og létt, ókeypis og opið efnisstjórnunarkerfi (CMS) með

Hvernig á að setja upp Subrion 4.1 CMS á Fedora 26 LAMP VPS

Hvernig á að setja upp Subrion 4.1 CMS á Fedora 26 LAMP VPS

Að nota annað kerfi? Subrion 4.1 CMS er öflugt og sveigjanlegt opinn efnisstjórnunarkerfi (CMS) sem kemur með leiðandi og skýrt efni

Settu upp TaskServer (taskd) á Fedora 26

Settu upp TaskServer (taskd) á Fedora 26

Að nota annað kerfi? TaskWarrior er opinn uppspretta tímastjórnunarverkfæri sem er endurbót á Todo.txt forritinu og klónum þess. Vegna þ

Hvernig á að setja upp CMS Made Simple 2.2 á Fedora 26 LAMP VPS

Hvernig á að setja upp CMS Made Simple 2.2 á Fedora 26 LAMP VPS

Að nota annað kerfi? CMS Made Simple 2.2 er sveigjanlegt og stækkanlegt, ókeypis og opið efnisstjórnunarkerfi (CMS) sem er skynsamlega hannað til að b.

Setur upp Bro IDS á Fedora 25

Setur upp Bro IDS á Fedora 25

Að nota annað kerfi? Inngangur Bro er opinn netumferðargreiningari. Það er fyrst og fremst öryggiseftirlit sem skoðar alla umferð á línu

Hvernig á að setja upp X-Cart 5 á Fedora 31

Hvernig á að setja upp X-Cart 5 á Fedora 31

Að nota annað kerfi? X-Cart er afar sveigjanlegur netverslunarvettvangur með opinn uppspretta með fullt af eiginleikum og samþættingum. X-Cart frumkóði er gestgjafi

Hvernig á að setja upp Matomo Analytics á Fedora 28

Hvernig á að setja upp Matomo Analytics á Fedora 28

Að nota annað kerfi? Matomo (áður Piwik) er opinn uppspretta greiningarvettvangur, opinn valkostur við Google Analytics. Matomo uppspretta er hýst o

Hvernig á að setja upp MyBB á Fedora 28

Hvernig á að setja upp MyBB á Fedora 28

Að nota annað kerfi? MyBB er ókeypis og opinn uppspretta, leiðandi og stækkanlegt spjallforrit. MyBB frumkóði er hýstur á GitHub. Þessi leiðarvísir mun sho

Hvernig á að setja upp og stilla verkefnaborð á Fedora 30

Hvernig á að setja upp og stilla verkefnaborð á Fedora 30

Að nota annað kerfi? Inngangur TaskBoard er ókeypis og opinn hugbúnaður sem hægt er að nota til að halda utan um hluti sem þarf að gera. Það veitir

Hvernig á að setja upp LimeSurvey CE á Fedora 28

Hvernig á að setja upp LimeSurvey CE á Fedora 28

Að nota annað kerfi? LimeSurvey er opið könnunarforrit skrifað í PHP. LimeSurvey frumkóði er hýstur á GitHub. Þessi handbók mun sýna þér

Hvernig á að setja upp Backdrop CMS 1.8.0 á Fedora 26 LAMP VPS

Hvernig á að setja upp Backdrop CMS 1.8.0 á Fedora 26 LAMP VPS

Að nota annað kerfi? Backdrop CMS 1.8.0 er einfalt og sveigjanlegt, farsímavænt, ókeypis og opið efnisstjórnunarkerfi (CMS) sem gerir okkur kleift að

Hvernig á að setja upp Craft CMS á Fedora 29

Hvernig á að setja upp Craft CMS á Fedora 29

Að nota annað kerfi? Craft CMS er opinn uppspretta CMS skrifað í PHP. Craft CMS frumkóði er hýst á GitHub. Þessi handbók mun sýna þér hvernig á að setja upp

The Rise of Machines: Real World Applications of AI

The Rise of Machines: Real World Applications of AI

Gervigreind er ekki í framtíðinni, hún er hér í nútímanum Í þessu bloggi Lestu hvernig gervigreindarforrit hafa haft áhrif á ýmsa geira.

DDOS árásir: Stutt yfirlit

DDOS árásir: Stutt yfirlit

Ertu líka fórnarlamb DDOS árása og ruglaður með forvarnaraðferðirnar? Lestu þessa grein til að leysa spurningar þínar.

Hefur þú einhvern tíma velt því fyrir þér hvernig tölvuþrjótar græða peninga?

Hefur þú einhvern tíma velt því fyrir þér hvernig tölvuþrjótar græða peninga?

Þú gætir hafa heyrt að tölvuþrjótar græða mikið af peningum, en hefur þú einhvern tíma velt því fyrir þér hvernig þeir vinna sér inn svona peninga? við skulum ræða.

Byltingarkenndar uppfinningar frá Google sem munu auðvelda lífi þínu.

Byltingarkenndar uppfinningar frá Google sem munu auðvelda lífi þínu.

Viltu sjá byltingarkenndar uppfinningar frá Google og hvernig þessar uppfinningar breyttu lífi hvers manns í dag? Lestu síðan til að blogga til að sjá uppfinningar frá Google.

Föstudagur Nauðsynlegur: Hvað varð um gervigreindardrifna bíla?

Föstudagur Nauðsynlegur: Hvað varð um gervigreindardrifna bíla?

Hugmyndin um að sjálfkeyrandi bílar fari á göturnar með hjálp gervigreindar er draumur sem við höfum átt um tíma núna. En þrátt fyrir nokkur loforð eru þau hvergi sjáanleg. Lestu þetta blogg til að læra meira…

Tæknileg sérkenni: Fjarlæg framtíð mannlegrar siðmenningar?

Tæknileg sérkenni: Fjarlæg framtíð mannlegrar siðmenningar?

Þar sem vísindin þróast hratt og taka yfir mikið af viðleitni okkar, eykst hættan á því að verða fyrir óútskýranlegri einstæðu. Lestu, hvað sérkenni gæti þýtt fyrir okkur.

Þróun gagnageymslu – Infographic

Þróun gagnageymslu – Infographic

Geymsluaðferðir gagna hafa verið að þróast gæti verið frá fæðingu gagna. Þetta blogg fjallar um þróun gagnageymslu á grundvelli upplýsingamynda.

Virkni Big Data Reference Architecture Layers

Virkni Big Data Reference Architecture Layers

Lestu bloggið til að þekkja mismunandi lög í Big Data Architecture og virkni þeirra á einfaldasta hátt.

6 ótrúlegir kostir þess að hafa snjall heimilistæki í lífi okkar

6 ótrúlegir kostir þess að hafa snjall heimilistæki í lífi okkar

Í þessum stafræna heimi hafa snjallheimilistæki orðið afgerandi hluti af lífi. Hér eru nokkrir ótrúlegir kostir snjallheimatækja um hvernig þau gera líf okkar þess virði að lifa því og einfaldara.

macOS Catalina 10.15.4 viðbót uppfærsla veldur fleiri vandamálum en að leysa

macOS Catalina 10.15.4 viðbót uppfærsla veldur fleiri vandamálum en að leysa

Nýlega gaf Apple út macOS Catalina 10.15.4 viðbótaruppfærslu til að laga vandamál en svo virðist sem uppfærslan sé að valda fleiri vandamálum sem leiða til múrsteins á Mac vélum. Lestu þessa grein til að læra meira