Como implantar um servidor Lets Chat no CentOS 7

Let's Chat é um aplicativo de bate-papo de código aberto desenvolvido para fornecer serviço de mensagens auto-hospedado para pequenas equipes.

O Let's Chat é baseado no NodeJS e no MongoDB. Neste artigo, veremos como implantar o Let's Chat em um servidor do CentOS 7.

Pré-requisitos

  • Uma instância do servidor CentOS 7 com pelo menos 2G RAM. Recomenda-se 4G RAM.
  • Um usuário sudo .

Etapa 1: atualizar o sistema

Ao fazer login no seu sistema pela primeira vez, é necessário executar uma atualização em todo o sistema da seguinte maneira:

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

Após a reinicialização, efetue login novamente como o mesmo usuário sudo.

Etapa 2: Instalar o NodeJS

Instale o NodeJS 6.x mais recente da seguinte forma, que está 6.9.5no momento da gravação:

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

Etapa 3: instalar o MongoDB

Instale o MongoDB mais recente da seguinte forma, 3.4no momento em que este artigo foi escrito.

3.1 Crie o repositório MongoDB 3.4 YUM da seguinte maneira:

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 Instale e inicie a versão estável mais recente do MongoDB Server, 3.4.1no momento em que este artigo foi escrito:

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

Etapa 4: instalar o 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: É normal ver várias npm WARN ...mensagens durante a instalação. Apenas ignore-os.

Etapa 5 (opcional): crie o settings.ymlarquivo

Se você deseja personalizar o Let's Chat, é possível criar um arquivo nomeado /opt/lets-chat/settings.ymle, em seguida, colocar suas configurações personalizadas:

sudo cp settings.yml.sample settings.yml

Para os fins deste tutorial, usaremos as configurações padrão do arquivo de configurações de amostra.

Etapa 6: Instale para sempre

Você pode iniciar o Let's Chat a partir do /opt/lets-chatdiretório:

cd /opt/lets-chat
npm start

A saída deve se parecer com:

> [email protected] start /opt/lets-chat
> node app.js

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

Release 0.4.8

Para manter o aplicativo Let's Chat em execução, pressione Ctrl-Cprimeiro para sair e depois instale um aplicativo chamado foreverque pode garantir que isso aconteça:

sudo npm install forever -g

Use o foreveraplicativo para iniciar o Let's Chat:

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

Depois que o Let's Chat começar a funcionar, você poderá acessá-lo localmente via:

http://localhost:5000

Você pode testar sua instalação com o comando abaixo:

curl -I http://localhost:5000

A saída deve ser semelhante 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

Etapa 7: Instale o Nginx como um proxy reverso

Para habilitar o acesso externo à Web, você precisa configurar um proxy reverso, o Nginx, por exemplo, para redirecionar o tráfego.

7.1 Instale o Nginx:

sudo yum install nginx -y

7.2 Modifique as configurações do Nginx:

sudo vi /etc/nginx/nginx.conf

Encontre o location / {}segmento dentro do http {}segmento:

http {

    location / {
    }

}

Insira as linhas abaixo no location / {}segmento:

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;

O resultado final deve 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;
}

}

Salve e saia:

:wq!

7.3 Inicie o serviço Nginx:

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

7.4 Modifique as regras do firewall para permitir o acesso à web:

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

Etapa 8: acesso à Web

Aponte seu navegador da web http://203.0.113.1para acessar o Let's Chat e clique no I need an accountlink para registrar um nome de usuário para fazer login.

É isso aí. Obrigado pela leitura.



Leave a Comment

A IA pode lutar contra o aumento do número de ataques de ransomware

A IA pode lutar contra o aumento do número de ataques de ransomware

Os ataques de ransomware estão aumentando, mas a IA pode ajudar a lidar com os vírus de computador mais recentes? AI é a resposta? Leia aqui para saber se é AI boone ou bane

ReactOS: Este é o futuro do Windows?

ReactOS: Este é o futuro do Windows?

ReactOS, um sistema operacional de código aberto e gratuito está aqui com a versão mais recente. Será que ela pode atender às necessidades dos usuários modernos do Windows e derrubar a Microsoft? Vamos descobrir mais sobre esse estilo antigo, mas uma experiência de sistema operacional mais recente.

Fique conectado por meio do aplicativo WhatsApp Desktop 24 * 7

Fique conectado por meio do aplicativo WhatsApp Desktop 24 * 7

O Whatsapp finalmente lançou o aplicativo Desktop para usuários de Mac e Windows. Agora você pode acessar o Whatsapp do Windows ou Mac facilmente. Disponível para Windows 8+ e Mac OS 10.9+

Como a IA pode levar a automação de processos ao próximo nível?

Como a IA pode levar a automação de processos ao próximo nível?

Leia isto para saber como a Inteligência Artificial está se tornando popular entre as empresas de pequena escala e como está aumentando as probabilidades de fazê-las crescer e dar vantagem a seus concorrentes.

A atualização do suplemento do macOS Catalina 10.15.4 está causando mais problemas do que resolvendo

A atualização do suplemento do macOS Catalina 10.15.4 está causando mais problemas do que resolvendo

Recentemente, a Apple lançou o macOS Catalina 10.15.4, uma atualização suplementar para corrigir problemas, mas parece que a atualização está causando mais problemas, levando ao bloqueio de máquinas mac. Leia este artigo para saber mais

13 Ferramentas de Extração de Dados Comerciais de Big Data

13 Ferramentas de Extração de Dados Comerciais de Big Data

13 Ferramentas de Extração de Dados Comerciais de Big Data

O que é um sistema de arquivos de registro no diário e como ele funciona?

O que é um sistema de arquivos de registro no diário e como ele funciona?

Nosso computador armazena todos os dados de uma maneira organizada conhecida como sistema de arquivos Journaling. É um método eficiente que permite ao computador pesquisar e exibir arquivos assim que você clicar em search.https: //wethegeek.com/? P = 94116 & preview = true

Singularidade tecnológica: um futuro distante da civilização humana?

Singularidade tecnológica: um futuro distante da civilização humana?

À medida que a ciência evolui em um ritmo rápido, assumindo muitos de nossos esforços, os riscos de nos sujeitarmos a uma singularidade inexplicável também aumentam. Leia, o que a singularidade pode significar para nós.

Uma visão sobre 26 técnicas analíticas de Big Data: Parte 1

Uma visão sobre 26 técnicas analíticas de Big Data: Parte 1

Uma visão sobre 26 técnicas analíticas de Big Data: Parte 1

O impacto da inteligência artificial na saúde 2021

O impacto da inteligência artificial na saúde 2021

A IA na área da saúde deu grandes saltos nas últimas décadas. Portanto, o futuro da IA ​​na área da saúde ainda está crescendo dia a dia.