NodeBB este un software de forum modern, open source și bazat pe NodeJS.
Având în vedere clienții, NodeBB oferă proprietarilor comunității caracteristici puternice și ușurință de utilizare pentru a conduce implicarea comunității.
În acest articol, vom instala NodeBB pe CentOS 7.
Cerințe preliminare
- O instanță recent implementată a serverului Vultr CentOS 7 x64 de cel puțin 1 GB RAM.
- Conectarea ca
rootutilizator.
- Depozitul
EPELyum
Pasul 1: Actualizați sistemul
Conectați-vă la serverul dvs. prin SSH cu ajutorul utilizatorului sudo pentru instalare epel, actualizare a sistemului și reporniți pentru a aplica actualizările.
yum install epel-release -y
yum update -y && sudo shutdown -r now
Pasul 2: Instalează dependențe pentru NodeBB
În continuare, vom instala toate dependențele de sistem necesare NodeBB:
yum -y groupinstall "Development Tools"
yum -y install git redis ImageMagick npm
Porniți redisși faceți-l să funcționeze la fiecare pornire a sistemului:
systemctl start redis.service
systemctl enable redis.service
Pasul 3: Instalați NodeJS folosind nvm
Utilizați următoarele comenzi pentru a instala NodeJS v6.9.5- ultima versiune LTS a NodeJS la momentul scrierii acestui articol.
Notă: A doua comandă de mai jos va invoca nvm v0.33.0, cea mai recentă versiune de nvm în momentul scrierii acestui articol. Puteți oricând să consultați cea mai recentă versiune de nvm aici și apoi să modificați acea comandă în consecință.
cd
curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.0/install.sh | bash
source ~/.bash_profile
nvm list-remote
nvm install v6.9.5
Pasul 4: Instalează NodeBB
Instalați cea mai recentă versiune de NodeBB, NodeBB v1.4.3, după cum urmează:
cd /opt
git clone -b v1.4.3 https://github.com/NodeBB/NodeBB nodebb
cd nodebb
npm install
După instalare, rulați ./nodebbscriptul cu setupsteagul pentru a configura NodeBB:
./nodebb setup
Răspundeți la câteva întrebări după cum urmează pentru a utiliza setările implicite cu o bază de date redis. Când este cazul, apăsați Enterpentru a accepta setarea implicită prezentată între paranteze.
- URL utilizată pentru a accesa acest NodeBB (http: // localhost: 4567)
<Enter>
- Vă rugăm să introduceți un secret NodeBB (bb3244f1-3a7e-4ee2-bc77-5032fd4c8b00)
<Enter>
- Ce bază de date să folosești (mongo)
redis
- IP sau adresă gazdă a instanței dvs. Redis (127.0.0.1)
<Enter>
- Portul gazdă al instanței dvs. Redis (6379)
<Enter>
- Parola bazei de date Redis
<Enter>
- Ce bază de date să folosești (0..n) (0)
<Enter>
- Numele de utilizator al administratorului
admin
- Adresa de e-mail a administratorului
[email protected]
- Parola
yourpassword
- Confirmă parola
yourpassword
Având NodeBB instalat și configurat cu succes, puteți porni / opri / reporni manual NodeBB rulând:
./nodebb start
./nodebb stop
./nodebb restart
Pasul 5: Mențineți NodeBB funcționând pentru totdeauna
Forever este un instrument care poate menține rularea aplicației bazate pe nodejs. În producție, aceasta este o caracteristică utilă.
În primul rând, trebuie să opriți NodeBB:
./nodebb stop
Instalați pentru totdeauna la nivel global:
npm install forever -g
Porniți NodeBB folosind pentru totdeauna:
cd /opt/nodebb
forever start app.js
Puteți confirma că NodeBB rulează folosind o curlcomandă:
curl -I http://localhost:4567
Produsul ar trebui să semene cu:
HTTP/1.1 200 OK
X-Powered-By: NodeBB
X-Frame-Options: SAMEORIGIN
Access-Control-Allow-Origin: null
Content-Type: text/html; charset=utf-8
Content-Length: 19845
ETag: W/"4d85-cXlw1a5DyxHkfjSEd7Ru5Q"
set-cookie: express.sid=s%3AqoIQ1-JSyw1tvrrhyXiP7Sm5D-gDJ9HT.Aum4qMXBPiCgZ7Il%2BtrePafZJWEt2dIJlS%2BBTRZjWZs; Path=/; Expires=Sun, 26 Feb 2017 15:14:35 GMT; HttpOnly
Vary: Accept-Encoding
Date: Sun, 12 Feb 2017 15:14:36 GMT
Connection: keep-alive
Pasul 6: Configurați un proxy invers Nginx
Deoarece NodeBB rulează în mod implicit localhost, trebuie să configurați un proxy Nginx invers pentru a permite accesul web.
Instalați Nginx folosind YUM:
yum install nginx -y
Modificați setările Nginx:
vi /etc/nginx/nginx.conf
Găsiți location / {}segmentul în cadrul http {}segmentului:
http {
location / {
}
}
Introduceți liniile de mai jos în location / {}segment:
proxy_pass http://127.0.0.1:4567;
proxy_http_version 1.1;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header Host $host;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection 'upgrade';
proxy_cache_bypass $http_upgrade;
Rezultatul final ar trebui să fie:
http {
location / {
proxy_pass http://127.0.0.1:4567;
proxy_http_version 1.1;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header Host $host;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection 'upgrade';
proxy_cache_bypass $http_upgrade;
}
}
Salvează și închide:
:wq!
Porniți și activați serviciul Nginx:
systemctl start nginx.service
systemctl enable nginx.service
Pasul 7: Modificați regulile firewallului pentru a permite accesul vizitatorilor:
firewall-cmd --zone=public --permanent --add-service=http
firewall-cmd --reload
Pasul 8: Acces NodeBB
În cele din urmă, îndreptați-vă browserul web pentru http://203.0.113.1a vizita site-ul nou creat NodeBB. Vă puteți autentifica folosind datele de administrare pe care le-ați configurat mai devreme. Simțiți-vă liber să navigați și să personalizați NodeBB după conectarea ca administrator.