Requisits previs
Pas 1: actualitzeu el sistema
Pas 2: instal·leu NodeJS
Pas 3: instal·leu MongoDB
Pas 4: instal·leu Let's Chat
Pas 5 (opcional): creeu el fitxer settings.yml
Pas 6: instal·leu Forever
Pas 7: instal·leu Nginx com a servidor intermediari invers
Pas 8: Accés web
Let's Chat és una aplicació de xat de codi obert dissenyada per oferir un servei de missatgeria autoallotjat per a petits equips.
Let's Chat es basa en NodeJS i MongoDB. En aquest article, donarem una ullada a com implementar Let's Chat en un servidor CentOS 7.
Requisits previs
- Una instància de servidor CentOS 7 amb almenys 2 G de RAM. Es recomana 4G RAM.
- Un usuari de sudo .
Pas 1: actualitzeu el sistema
Quan inicieu sessió al vostre sistema per primera vegada, cal que realitzeu una actualització a tot el sistema de la manera següent:
sudo yum install epel-release -y
sudo yum clean all && sudo yum update -y && sudo shutdown -r now
Després del reinici, torneu a iniciar sessió amb el mateix usuari sudo.
Pas 2: instal·leu NodeJS
Instal·leu l'últim NodeJS 6.x de la següent manera, que és 6.9.5en el moment d'escriure:
cd
curl --silent --location https://rpm.nodesource.com/setup_6.x | sudo bash -
sudo yum install -y nodejs
Pas 3: instal·leu MongoDB
Instal·leu l'últim MongoDB de la següent manera, que és 3.4en el moment en què es va escriure aquest article.
3.1 Creeu el dipòsit MongoDB 3.4 YUM de la següent manera:
cat <<EOF | sudo tee -a /etc/yum.repos.d/mongodb-org-3.4.repo
[mongodb-org-3.4]
name=MongoDB Repository
baseurl=https://repo.mongodb.org/yum/redhat/7/mongodb-org/3.4/x86_64/
gpgcheck=1
enabled=1
gpgkey=https://www.mongodb.org/static/pgp/server-3.4.asc
EOF
3.2 Instal·leu i inicieu la darrera versió estable de MongoDB Server, que és 3.4.1en el moment en què es va escriure aquest article:
sudo yum install -y mongodb-org
sudo systemctl start mongod.service
sudo systemctl enable mongod.service
Pas 4: instal·leu Let's Chat
sudo yum install git -y
cd /opt
sudo git clone https://github.com/sdelements/lets-chat.git
cd lets-chat
sudo npm install
Nota: És normal veure diversos npm WARN ...missatges durant la instal·lació. Simplement ignora'ls.
Pas 5 (opcional): creeu el settings.ymlfitxer
Si voleu personalitzar Let's Chat, podeu crear un fitxer amb el nom /opt/lets-chat/settings.ymli després posar-hi la vostra configuració personalitzada:
sudo cp settings.yml.sample settings.yml
Amb el propòsit d'aquest tutorial, utilitzarem la configuració predeterminada del fitxer de configuració de mostra.
Pas 6: instal·leu Forever
Podeu iniciar Let's Chat des del /opt/lets-chatdirectori:
cd /opt/lets-chat
npm start
La sortida hauria de semblar-se a:
> lets-chat@0.4.8 start /opt/lets-chat
> node app.js
██╗ ███████╗████████╗███████╗ ██████╗██╗ ██╗ █████╗ ████████╗
██║ ██╔════╝╚══██╔══╝██╔════╝ ██╔════╝██║ ██║██╔══██╗╚══██╔══╝
██║ █████╗ ██║ ███████╗ ██║ ███████║███████║ ██║
██║ ██╔══╝ ██║ ╚════██║ ██║ ██╔══██║██╔══██║ ██║
███████╗███████╗ ██║ ███████║ ╚██████╗██║ ██║██║ ██║ ██║
╚══════╝╚══════╝ ╚═╝ ╚══════╝ ╚═════╝╚═╝ ╚═╝╚═╝ ╚═╝ ╚═╝
Release 0.4.8
Per tal de mantenir l'aplicació Let's Chat en funcionament, premem Ctrl-Cprimer per sortir i després instal·lem una aplicació anomenada foreverque pot garantir que això passi:
sudo npm install forever -g
Utilitzeu l' foreveraplicació per iniciar Let's Chat:
cd /opt/lets-chat
forever start app.js
Després que Let's Chat estigui en funcionament, podeu accedir-hi localment mitjançant:
http://localhost:5000
Podeu provar la vostra instal·lació amb l'ordre següent:
curl -I http://localhost:5000
La sortida hauria de ser semblant a:
HTTP/1.1 302 Found
X-Frame-Options: SAMEORIGIN
X-Download-Options: noopen
X-Content-Type-Options: nosniff
X-XSS-Protection: 1; mode=block
Content-Security-Policy:
X-Content-Security-Policy:
X-WebKit-CSP:
X-UA-Compatible: IE=Edge,chrome=1
Location: /login
Vary: Accept, Accept-Encoding
Content-Type: text/plain; charset=utf-8
Content-Length: 28
set-cookie: connect.sid=s%3A0YTFL6Un5G7iMc3zt8i-vlIh2YDQqTZ3.1dVZFG3VWmwd%2FXXXJiuyWSQ4k432MVvxm7xrgJGIej4; Path=/; HttpOnly
Date: Wed, 01 Feb 2017 11:30:03 GMT
Connection: keep-alive
Pas 7: instal·leu Nginx com a servidor intermediari invers
Per habilitar l'accés web extern, heu de configurar un servidor intermediari invers, Nginx, per exemple, per redirigir el trànsit.
7.1 Instal·leu Nginx:
sudo yum install nginx -y
7.2 Modificar la configuració de Nginx:
sudo vi /etc/nginx/nginx.conf
Trobeu el location / {}segment dins del http {}segment:
http {
location / {
}
}
Inseriu les línies següents al location / {}segment:
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header Host $host;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection 'upgrade';
proxy_cache_bypass $http_upgrade;
proxy_pass http://127.0.0.1:5000;
El resultat final hauria de ser:
http {
location / {
proxy_pass http://127.0.0.1:5000;
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;
}
}
Desa i surt:
:wq!
7.3 Inicieu el servei Nginx:
sudo systemctl start nginx.service
sudo systemctl enable nginx.service
7.4 Modificar les regles del tallafoc per permetre l'accés web:
sudo firewall-cmd --zone=public --permanent --add-service=http
sudo firewall-cmd --reload
Pas 8: Accés web
Apunteu el vostre navegador web http://203.0.113.1per accedir a Let's Chat i, a continuació, feu clic a l' I need an accountenllaç per registrar un nom d'usuari per iniciar la sessió.
Això és. Gràcies per llegir.