
Tutorial de instalação do Rocket.Chat no Sistema Operacional Linux CentOS 7.

Rocket.Chat é uma plataforma de Chat muito semelhante ao poderoso Slack! Com o Rocket.Chat você consegue criar canais de comunicação, realizar integrações com serviços de terceiros, além de conseguir implementar dentro da sua rede ou em um ambiente AWS ou Google Cloud.
Bem, como já visto no titulo do tutorial, iremos implementar o Rocket.Chat no CentOS 7.
Meu cenário aqui é o seguinte:
CentOS 7.6
MongoDB
NodeJS
Rocket.Chat
Como estarei abordando a instalação para ambiente de testes, estarei desativando o SELinux e o FirewallD do CentOS 7:
Desativando o SELinux:
1 |
sed -i "s/^SELINUX=enforcing/SELINUX=disabled/" /etc/selinux/config |
Desabilitando o FirewallD e reiniciando o servidor para aplicar as alterações:
1 2 |
systemctl disable firewalld reboot |
O segundo passo é atualizar o ambiente operacional:
1 |
yum -y update |
Em seguida iremos instalar o repositório Epel:
1 |
yum -y install epel-release |
Para que possamos gerenciar de maneira efetiva o servidor que irá hospedar o Rocket.Chat, é preciso instalar alguns pacotes de gestão de ambiente Linux, isso é opcional, mas confesso que faz toda diferença na administração do mesmo.
Estarei instalando o VIM para edição dos arquivos, o HTOP para monitorar processos e recursos computacionais, além do WGET e CURL para download s de arquivos.
1 |
yum -y install vim htop wget curl make gcc g++ gcc-c++ libgcc |
Após a instalação dos pacotes de administração básica do sistema Linux, vamos criar o repositório para instalação do MongoDB.
1 2 3 4 5 6 7 8 |
cat << EOF | sudo tee -a /etc/yum.repos.d/mongodb-org-4.0.repo [mongodb-org-4.0] name=MongoDB Repository baseurl=https://repo.mongodb.org/yum/redhat/7/mongodb-org/4.0/x86_64/ gpgcheck=1 enabled=1 gpgkey=https://www.mongodb.org/static/pgp/server-4.0.asc EOF |
Instalando o MongoDB e o NodeJS:
1 |
yum -y install mongodb-org nodejs |
Vamos instalar o Nodejs:
1 |
curl -sL https://rpm.nodesource.com/setup_8.x |
Precisamos instalar também o pacote GhaphicsMagick e o NPM, ele é composto por vários outros pacotes, não se assuste 🙂
1 |
yum -y install GraphicsMagick npm |
Em seguida, vamos instalar o inherits e o n com o npm.
1 |
npm install -g inherits n |
Vai retornar a mensagem abaixo:

Vamos atualizar a versão do Node, para a 8.11.4, utilizando o comando abaixo:
1 |
n 8.11.4 |

Instalando o Rocket.Chat, utilizando o CURL:
1 |
curl -L https://releases.rocket.chat/latest/download -o /tmp/rocket.chat.tgz |

Extraindo o pacote baixado:
1 |
tar -xzf /tmp/rocket.chat.tgz -C /tmp |
Acessando o diretório de instalação do Rocket.Chat e instalando via npm:
1 |
cd /tmp/bundle/programs/server && npm install |
Agora precisamos mover o diretório do rocket.chat de /tmp para /opt:
1 |
mv /tmp/bundle /opt/Rocket.Chat |
Configurando o Serviço do Rocket.Chat no SystemD:
Adicione o usuário rocketchat e ajuste as permissões no diretório /opt/Rocket.Chat:
1 2 3 |
useradd -M rocketchat && sudo usermod -L rocketchat chown -R rocketchat:rocketchat /opt/Rocket.Chat |
Em seguida, vamos criar o arquivo responsável por gerenciar o serviço do Rocket.Chat junto ao SystemD:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
cat << EOF |sudo tee -a /lib/systemd/system/rocketchat.service [Unit] Description=The Rocket.Chat server After=network.target remote-fs.target nss-lookup.target nginx.target mongod.target [Service] ExecStart=/usr/local/bin/node /opt/Rocket.Chat/main.js StandardOutput=syslog StandardError=syslog SyslogIdentifier=rocketchat User=rocketchat Environment=MONGO_URL=mongodb://localhost:27017/rocketchat?replicaSet=rs01 MONGO_OPLOG_URL=mongodb://localhost:27017/local?replicaSet=rs01 ROOT_URL=http://localhost:3000/ PORT=3000 [Install] WantedBy=multi-user.target EOF |
Agora, é preciso fazer um ajuste no arquivo de configuração do MongoDB:
1 2 3 |
sed -i "s/^# engine:/ engine: mmapv1/" /etc/mongod.conf sed -i "s/^#replication:/replication:\n replSetName: rs01/" /etc/mongod.conf |
Habilitando o serviço do MongoDB para inicializar junto ao boot do S.O.:
1 |
systemctl enable mongod |
Iniciando o serviço do MongoDB:
1 |
systemctl start mongod |
Checando se o MongoDB foi inicializado corretamente.
1 |
mongo --eval "printjson(rs.initiate())" |

Configurando o serviço do Rocket.Chat para inicializar junto ao boot do S.O. e iniciando o serviço:
1 |
systemctl enable rocketchat && sudo systemctl start rocketchat |
Verificando o status do serviço do Rocket.Chat:
1 |
systemctl status rocketchat |

Configurando a Instalação via web, isso pode demorar um pouco para carregar.
Acesse no seu navegador o endereço http://endereço_ip:3000
Tela inicial do Assistente de Configuração do Rocket.Chat:

Preencha os dados e clique em Continuar:

Na próxima tela, preencha os dados de informação sobre a Organização:

Na próxima tela iremos informar os dados do servidor:

Para finalizar, selecione a melhor opção referente a Servidor de Registro e clique em Continuar:

Ao finalizar será exibido a mensagem abaixo:

Ao clicar no botão azul, você será encaminhado para a tela principal do Rocket.Chat:

É isso, para mais informações visite o site oficial: https://rocket.chat
Dúvidas, comentário e sugestões postem nos comentários…
👋🏼 Até a próxima!

Johnny Ferreira
johnny.ferreira.santos@gmail.com
http://www.tidahora.com.br