Otu esi etinye ka anyị kparịta ụka na CentOS na sistemụ Debian


Ka anyị kparịta ụka bụ ebe efu na nke mepere emepe, ngwa nkata na-akwado onwe nke emebere maka obere otu. Ọ bụ njirimara-ọgaranya; wuru site na iji Node.js wee were MongoDB chekwaa data ngwa.

  • Na-akwado ozi na-adịgide adịgide
  • Na-akwado ọtụtụ ọnụ ụlọ
  • Na-akwado nyocha mpaghara/Kerberos/LDAP
  • Na-abịa na API REST dị ka
  • Na-akwado ụlọ nkeonwe yana paswọọdụ echedoro
  • Na-enye nkwado maka ọkwa ọkwa ozi ọhụrụ
  • Na-akwadokwa aha (hey @tecmint/@all)
  • Na-enye nkwado maka ihe agbakwunyere onyonyo/ọchụchọ Giphy
  • Na-enye ohere mado koodu
  • Nkwado maka ibugo faịlụ (na mpaghara ma ọ bụ site na Amazon S3 ma ọ bụ Azure)
  • Na-akwadokwa nkata ọtụtụ onye ọrụ XMPP (MUC) na nkata 1-na-1 n'etiti ndị ọrụ XMPP na ọtụtụ ndị ọzọ.

N'ụzọ dị mkpa, e bu n'obi ka ọ dị mfe ibugharị ya na sistemụ ọ bụla na-emezu ihe niile a chọrọ.

  • Node.js (0.11+)
  • MongoDB (2.6+)
  • Python (2.7.x)

N'ime edemede a, anyị ga-akọwa otu esi etinye ma jiri ngwa ozi Ka anyị kparịta ụka maka obere otu na sistemụ CentOS na Debian.

Kwụpụ 1: Melite sistemụ

1. Mbụ jide n'aka na ị ga-emelite usoro dum site na ịwụnye ngwugwu dị mkpa dị ka ndị a.

-------------- On CentOS/RHEL/Fedora -------------- 
$ sudo yum update && sudo yum upgrade

-------------- On Debian/Ubuntu -------------- 
$ sudo apt-get update && sudo apt-get -y upgrade
$ sudo apt-get install software-properties-common git build-essential

2. Mgbe emechara usoro mmelite, reboot ihe nkesa (Nhọrọ).

$ sudo reboot

Nzọụkwụ 2: Ịwụnye Node.js

3. Wụnye ụdị NodeJS kachasị ọhụrụ (ya bụ ụdị 7.x n'oge edere) site na iji ebe nchekwa nodesource dị ka egosiri.

-------------- On CentOS/RHEL/Fedora --------------
$ curl -sL https://rpm.nodesource.com/setup_7.x | sudo -E bash - 
$ sudo yum install nodejs

-------------- On Debian/Ubuntu -------------- 
$ curl -sL https://deb.nodesource.com/setup_7.x | sudo -E bash -
$ sudo apt install nodejs 

Kwụpụ 3: Ịwụnye MongoDB Server

4. Ọzọ ịkwesịrị ịwụnye ụdị obodo MongoDB, Otú ọ dị, ọ dịghị na ebe nchekwa YUM. Ya mere, ị ga-eme ka ebe nchekwa MongoDB dị ka akọwara n'okpuru.

$ 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

Ugbu a wụnye ma malite ụdị MongoDB Server kachasị ọhụrụ (ya bụ 3.4).

$ sudo yum install mongodb-org
$ sudo systemctl start mongod.service
$ sudo systemctl enable mongod.service
$ sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv EA312927
$ echo 'deb http://repo.mongodb.org/apt/ubuntu xenial/mongodb-org/3.2 multiverse' | sudo tee /etc/apt/sources.list.d/mongodb-org-3.2.list
$ sudo apt-get update
$ sudo apt-get install -y mongodb-org
$ sudo systemctl start mongod.service
$ sudo systemctl enable mongod.service

Nzọụkwụ 4: Wụnye ka anyị kparịta ụka

5. Buru ụzọ tinye git ka ị mechie ebe nchekwa Ka anyị kparịta ụka wee wụnye dabere dị ka egosiri.

$ sudo yum install git		##RHEL/CentOS
$ sudo apt install git		##Debian/Ubuntu

$ cd /srv
$ sudo git clone https://github.com/sdelements/lets-chat.git 
$ cd lets-chat
$ sudo npm install

Cheta na: Npm AKA NTỊ si na mmepụta n'elu bụ ihe nkịtị n'oge echichi. Naanị leghara ha anya.

6. Mgbe emechara echichi, mepụta faịlụ nhazi ngwa (/srv/lets-chat/settings.yml) site na faịlụ nlele ma kọwaa ntọala omenala gị n'ime ya:

$ sudo cp settings.yml.sample settings.yml

Anyị ga-eji ntọala ndabara enyere site na faịlụ ntọala nlele.

7. N'ikpeazụ malite ka anyị kparịta ụka.

$ npm start 

Iji mee ka Let's Chat daemon na-agba ọsọ, ka anyị pịa Ctrl-C ka ịpụ wee mepụta faịlụ otu Systemd iji mee ka ọ rụọ ọrụ na sistemụ buut.

Kwụpụ 5: Mepụta Ka anyị kparịta faịlụ mmalite

8. Mepụta faịlụ otu sistemu maka Ka anyị kparịta ụka.

$ sudo vi /etc/systemd/system/letschat.service

Detuo na mado nhazi otu n'okpuru na faịlụ ahụ.

[Unit]
Description=Let's Chat Server
Wants=mongodb.service
After=network.target mongodb.service

[Service]
Type=simple
WorkingDirectory=/srv/lets-chat
ExecStart=/usr/bin/npm start
User=root
Group=root
Restart=always
RestartSec=9

[Install]
WantedBy=multi-user.target

9. Ugbu a na-amalite ọrụ maka pụtara oge na-enyere ya na-akpaghị aka na-amalite na usoro buut.

$ sudo systemctl start letschat
$ sudo systemctl enable letschat
$ sudo systemctl status letschat

Kwụpụ 6: Nweta Ka anyị kparịta Interface Webụ

10. Ozugbo ihe niile dị, ị nwere ike ịnweta interface weebụ Let's Chat na URL na-esonụ.

https://SERVER_IP:5000
OR
https://localhost:5000

11. Pịa na \Achọrọ m akaụntụ ka ịmepụta otu wee dejupụta ozi achọrọ wee pịa Register.

Ị nwekwara ike ịmasị akụkọ ndị metụtara ya:

  1. Iwu bara uru iji mepụta nkesa nkata iwu na Linux
  2. Mepụta ihe nkesa ozi ngwa ngwa/ịkparịta ụka n'iji \Openfire na Linux

Ka anyị kparịta ebe nchekwa Github: https://github.com/sdelements/lets-chat

Nwee obi ụtọ! Ị nwere ugbu a arụnyere ngwa Let's Chat na sistemụ gị. Iji soro anyị kerịta echiche ọ bụla, jiri ụdị nzaghachi dị n'okpuru.