Preduvjeti
Korak 1: Ažurirajte sustav
Korak 2: Instalirajte NodeJS
Korak 3: Instalirajte MongoDB
Korak 4: Instalirajte Let's Chat
Korak 5 (nije obavezno): Stvorite datoteku settings.yml
Korak 6: Instalirajte zauvijek
Korak 7: Instalirajte Nginx kao obrnuti proxy
Korak 8: Pristup webu
Let's Chat je aplikacija za chat otvorenog koda osmišljena za pružanje usluge razmjene poruka s vlastitim hostingom za male timove.
Let's Chat temelji se na NodeJS i MongoDB. U ovom članku ćemo pogledati kako implementirati Let's Chat na CentOS 7 server.
Preduvjeti
- Instanca poslužitelja CentOS 7 s najmanje 2G RAM-a. Preporučuje se 4G RAM.
- Korisnik sudoa .
Korak 1: Ažurirajte sustav
Kada se prvi put prijavite na svoj sustav, potrebno je izvršiti ažuriranje za cijeli sustav na sljedeći način:
sudo yum install epel-release -y
sudo yum clean all && sudo yum update -y && sudo shutdown -r now
Nakon ponovnog pokretanja, ponovno se prijavite kao isti sudo korisnik.
Korak 2: Instalirajte NodeJS
Instalirajte najnoviji NodeJS 6.x na sljedeći način, koji je 6.9.5u trenutku pisanja:
cd
curl --silent --location https://rpm.nodesource.com/setup_6.x | sudo bash -
sudo yum install -y nodejs
Korak 3: Instalirajte MongoDB
Instalirajte najnoviji MongoDB na sljedeći način, što je 3.4u vrijeme pisanja ovog članka.
3.1 Kreirajte MongoDB 3.4 YUM repo na sljedeći način:
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 Instalirajte i pokrenite najnovije stabilno izdanje MongoDB poslužitelja, koje je 3.4.1u vrijeme pisanja ovog članka:
sudo yum install -y mongodb-org
sudo systemctl start mongod.service
sudo systemctl enable mongod.service
Korak 4: Instalirajte 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
Napomena: Normalno je vidjeti nekoliko npm WARN ...poruka tijekom instalacije. Samo ih ignorirajte.
Korak 5 (neobavezno): Stvorite settings.ymldatoteku
Ako želite prilagoditi Let's Chat, možete stvoriti datoteku pod nazivom /opt/lets-chat/settings.ymli zatim u nju staviti svoje prilagođene postavke:
sudo cp settings.yml.sample settings.yml
Za potrebe ovog vodiča koristit ćemo zadane postavke iz datoteke s postavkama uzorka.
Korak 6: Instalirajte zauvijek
Možete pokrenuti Let's Chat iz /opt/lets-chatimenika:
cd /opt/lets-chat
npm start
Izlaz bi trebao izgledati:
> lets-chat@0.4.8 start /opt/lets-chat
> node app.js
██╗ ███████╗████████╗███████╗ ██████╗██╗ ██╗ █████╗ ████████╗
██║ ██╔════╝╚══██╔══╝██╔════╝ ██╔════╝██║ ██║██╔══██╗╚══██╔══╝
██║ █████╗ ██║ ███████╗ ██║ ███████║███████║ ██║
██║ ██╔══╝ ██║ ╚════██║ ██║ ██╔══██║██╔══██║ ██║
███████╗███████╗ ██║ ███████║ ╚██████╗██║ ██║██║ ██║ ██║
╚══════╝╚══════╝ ╚═╝ ╚══════╝ ╚═════╝╚═╝ ╚═╝╚═╝ ╚═╝ ╚═╝
Release 0.4.8
Kako bi aplikacija Let's Chat ostala pokrenuta, Ctrl-Cprvo pritisnite za izlaz, a zatim instalirajte aplikaciju pod nazivom foreverkoja može osigurati da će se to dogoditi:
sudo npm install forever -g
Koristite foreveraplikaciju za početak Let's Chat:
cd /opt/lets-chat
forever start app.js
Nakon što se Let's Chat pokrene i pokrene, možete mu pristupiti lokalno putem:
http://localhost:5000
Svoju instalaciju možete testirati sljedećom naredbom:
curl -I http://localhost:5000
Izlaz bi trebao biti sličan:
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
Korak 7: Instalirajte Nginx kao obrnuti proxy
Da biste omogućili vanjski pristup webu, morate postaviti obrnuti proxy, na primjer Nginx, za preusmjeravanje prometa.
7.1 Instalirajte Nginx:
sudo yum install nginx -y
7.2 Izmijenite postavke Nginxa:
sudo vi /etc/nginx/nginx.conf
Pronađite location / {}segment unutar http {}segmenta:
http {
location / {
}
}
Umetnite donje linije u 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;
Konačni rezultat bi trebao biti:
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;
}
}
Spremi i zatvori:
:wq!
7.3 Pokrenite Nginx uslugu:
sudo systemctl start nginx.service
sudo systemctl enable nginx.service
7.4 Izmijenite pravila vatrozida kako biste omogućili pristup webu:
sudo firewall-cmd --zone=public --permanent --add-service=http
sudo firewall-cmd --reload
Korak 8: Pristup webu
Usmjerite svoj web preglednik na http://203.0.113.1za pristup Let's Chat, a zatim kliknite I need an accountvezu da biste registrirali korisničko ime za prijavu.
To je to. Hvala na čitanju.