Comment déployer un serveur Lets Chat sur CentOS 7

Let's Chat est une application de chat open source conçue pour fournir un service de messagerie auto-hébergé aux petites équipes.

Let's Chat est basé sur NodeJS et MongoDB. Dans cet article, nous allons voir comment déployer Let's Chat sur un serveur CentOS 7.

Conditions préalables

  • Une instance de serveur CentOS 7 avec au moins 2 Go de RAM. 4G RAM recommandé.
  • Un utilisateur sudo .

Étape 1: mettre à jour le système

Lorsque vous vous connectez à votre système pour la première fois, il est nécessaire d'effectuer une mise à jour à l'échelle du système comme suit:

sudo yum install epel-release -y
sudo yum clean all && sudo yum update -y && sudo shutdown -r now

Après le redémarrage, reconnectez-vous en tant que même utilisateur sudo.

Étape 2: installer NodeJS

Installez le dernier NodeJS 6.x comme suit, 6.9.5au moment de la rédaction:

cd
curl --silent --location https://rpm.nodesource.com/setup_6.x | sudo bash -
sudo yum install -y nodejs

Étape 3: installer MongoDB

Installez la dernière version de MongoDB comme suit, 3.4au moment où cet article a été écrit.

3.1 Créez le référentiel YUM MongoDB 3.4 comme suit:

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 Installez et démarrez la dernière version stable de MongoDB Server, 3.4.1au moment où cet article a été écrit:

sudo yum install -y mongodb-org
sudo systemctl start mongod.service
sudo systemctl enable mongod.service

Étape 4: installez 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

Remarque: Il est normal de voir plusieurs npm WARN ...messages lors de l'installation. Ignore les.

Étape 5 (facultative): créez le settings.ymlfichier

Si vous souhaitez personnaliser Let's Chat, vous pouvez créer un fichier nommé /opt/lets-chat/settings.ymlpuis y mettre vos paramètres personnalisés:

sudo cp settings.yml.sample settings.yml

Pour les besoins de ce didacticiel, nous utiliserons les paramètres par défaut de l'exemple de fichier de paramètres.

Étape 6: installer Forever

Vous pouvez démarrer Let's Chat à partir du /opt/lets-chatrépertoire:

cd /opt/lets-chat
npm start

La sortie doit ressembler à:

> lets-chat@0.4.8 start /opt/lets-chat
> node app.js

██╗     ███████╗████████╗███████╗     ██████╗██╗  ██╗ █████╗ ████████╗
██║     ██╔════╝╚══██╔══╝██╔════╝    ██╔════╝██║  ██║██╔══██╗╚══██╔══╝
██║     █████╗     ██║   ███████╗    ██║     ███████║███████║   ██║
██║     ██╔══╝     ██║   ╚════██║    ██║     ██╔══██║██╔══██║   ██║
███████╗███████╗   ██║   ███████║    ╚██████╗██║  ██║██║  ██║   ██║
╚══════╝╚══════╝   ╚═╝   ╚══════╝     ╚═════╝╚═╝  ╚═╝╚═╝  ╚═╝   ╚═╝

Release 0.4.8

Afin de maintenir l'application Let's Chat en cours d'exécution, appuyez d' Ctrl-Cabord sur pour quitter, puis installez une application nommée foreverqui peut garantir que cela se produira:

sudo npm install forever -g

Utilisez l' foreverapplication pour démarrer Let's Chat:

cd /opt/lets-chat
forever start app.js

Une fois que Let's Chat est opérationnel, vous pouvez y accéder localement via:

http://localhost:5000

Vous pouvez tester votre installation avec la commande ci-dessous:

curl -I http://localhost:5000

La sortie doit être similaire à:

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

Étape 7: installer Nginx en tant que proxy inverse

Afin d'activer l'accès Web externe, vous devez configurer un proxy inverse, Nginx, par exemple, pour rediriger le trafic.

7.1 Installez Nginx:

sudo yum install nginx -y

7.2 Modifier les paramètres de Nginx:

sudo vi /etc/nginx/nginx.conf

Trouvez le location / {}segment dans le http {}segment:

http {

    location / {
    }

}

Insérez les lignes ci-dessous dans le 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;

Le résultat final devrait être:

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;
}

}

Sauvegarder et quitter:

:wq!

7.3 Démarrez le service Nginx:

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

7.4 Modifier les règles du pare-feu afin de permettre l'accès Web:

sudo firewall-cmd --zone=public --permanent --add-service=http
sudo firewall-cmd --reload

Étape 8: accès Web

Pointez votre navigateur Web http://203.0.113.1pour accéder à Let's Chat, puis cliquez sur le I need an accountlien pour enregistrer un nom d'utilisateur pour la connexion.

C'est tout. Merci d'avoir lu.

Laisser un commentaire

Comment générer des clés SSH?

Comment générer des clés SSH?

Découvrez comment générer une clé SSH pour accéder à votre serveur sans mot de passe. Suivez nos étapes faciles à comprendre pour créer et ajouter des clés SSH.

Créer un serveur de messagerie avec hMailServer sous Windows

Créer un serveur de messagerie avec hMailServer sous Windows

Découvrez comment créer un serveur de messagerie avec hMailServer sous Windows pour recevoir des e-mails facilement.

LIA peut-elle lutter contre un nombre croissant dattaques de ransomware

LIA peut-elle lutter contre un nombre croissant dattaques de ransomware

Les attaques de ransomware sont en augmentation, mais l'IA peut-elle aider à lutter contre le dernier virus informatique ? L'IA est-elle la réponse ? Lisez ici, sachez que l'IA est un boone ou un fléau

ReactOS : est-ce lavenir de Windows ?

ReactOS : est-ce lavenir de Windows ?

ReactOS, un système d'exploitation open source et gratuit est ici avec la dernière version. Cela peut-il suffire aux besoins des utilisateurs de Windows modernes et faire tomber Microsoft ? Découvrons-en plus sur cet ancien style, mais une expérience de système d'exploitation plus récente.

Restez connecté via lapplication de bureau WhatsApp 24 * 7

Restez connecté via lapplication de bureau WhatsApp 24 * 7

Whatsapp a finalement lancé l'application de bureau pour les utilisateurs Mac et Windows. Vous pouvez désormais accéder facilement à Whatsapp depuis Windows ou Mac. Disponible pour Windows 8+ et Mac OS 10.9+

Comment lIA peut-elle faire passer lautomatisation des processus au niveau supérieur ?

Comment lIA peut-elle faire passer lautomatisation des processus au niveau supérieur ?

Lisez ceci pour savoir comment l'intelligence artificielle devient populaire parmi les petites entreprises et comment elle augmente les probabilités de les faire grandir et de donner à leurs concurrents un avantage.

La mise à jour du supplément macOS Catalina 10.15.4 cause plus de problèmes quelle nen résout

La mise à jour du supplément macOS Catalina 10.15.4 cause plus de problèmes quelle nen résout

Récemment, Apple a publié macOS Catalina 10.15.4, une mise à jour supplémentaire pour résoudre les problèmes, mais il semble que la mise à jour cause davantage de problèmes, ce qui entraîne le bridage des machines mac. Lisez cet article pour en savoir plus

13 outils commerciaux dextraction de données de Big Data

13 outils commerciaux dextraction de données de Big Data

13 outils commerciaux d'extraction de données de Big Data

Quest-ce quun système de fichiers de journalisation et comment fonctionne-t-il ?

Quest-ce quun système de fichiers de journalisation et comment fonctionne-t-il ?

Notre ordinateur stocke toutes les données d'une manière organisée connue sous le nom de système de fichiers de journalisation. C'est une méthode efficace qui permet à l'ordinateur de rechercher et d'afficher des fichiers dès que vous appuyez sur la recherche.https://wethegeek.com/?p=94116&preview=true

Singularité technologique : un futur lointain de la civilisation humaine ?

Singularité technologique : un futur lointain de la civilisation humaine ?

Alors que la science évolue à un rythme rapide, prenant le pas sur une grande partie de nos efforts, les risques de nous soumettre à une Singularité inexplicable augmentent également. Lisez, ce que la singularité pourrait signifier pour nous.