Instalação NodeBB · 8 min read · Sep 09, 2025
Como Instalar NodeBB com MongoDB e Nginx Proxy no AlmaLinux 9

NodeBB é um software de fórum de código aberto, baseado em Node.js, que fornece uma solução moderna e responsiva para comunidades online. Executando no Ubuntu Linux, o NodeBB aproveita a robustez e flexibilidade do sistema operacional para oferecer alto desempenho e escalabilidade. Ele utiliza uma combinação de MongoDB e Redis para gerenciamento de banco de dados, tornando-o capaz de lidar com grandes volumes de conteúdo gerado por usuários de forma eficiente.
NodeBB é conhecido por suas notificações em tempo real, integração perfeita com várias plataformas de mídia social e um extenso ecossistema de plugins, permitindo que os administradores personalizem seus fóruns para atender a necessidades específicas. Além disso, seu design mobile-first garante uma experiência de usuário consistente e envolvente em todos os dispositivos. A estabilidade e os recursos de segurança do Ubuntu complementam o NodeBB, tornando-o uma escolha ideal para hospedar e gerenciar comunidades online dinâmicas.
Este guia fornecerá instruções passo a passo para instalar o NodeBB em um servidor Alma Linux 9. Você usará o MongoDB como banco de dados, o Nginx como um proxy reverso e, em seguida, protegerá o NodeBB com HTTPS através do Certbot e Letsencrypt.
Pré-requisitos
Antes de começar, certifique-se de que você tem o seguinte:
- Um servidor Alma Linux 9
- Um usuário não-root com privilégios de administrador
- Um nome de domínio apontado para o endereço IP do servidor
- Um SELinux com status permissivo e habilitado
Instalar dependências
NodeBB é um software de fórum de código aberto baseado em Node.js. Para instalar o NodeBB, você deve garantir que os seguintes pacotes estejam instalados, incluindo:
- Ferramentas do sistema como “Development Tools”, Git e ImageMagick
- Node.js 18 ou superior e NPM (Node Package Manager)
- Servidor de banco de dados NoSQL MongoDB
- Servidor web Nginx como um proxy reverso
Nesta seção, você instalará essas dependências no servidor Alma Linux 9.
Primeiro, execute o comando abaixo para habilitar o repositório CRB (CodeReadyBuild) do Alma Linux e instalar o repositório EPEL.
sudo crb enable
sudo dnf install epel-release -yEm seguida, crie um novo arquivo de repositório ‘ /etc/yum.repos.d/mongodb-org-7.0.repo ‘ com o editor ‘ nano ‘.
sudo nano /etc/yum.repos.d/mongodb-org-7.0.repoInsira a seguinte configuração no arquivo:
[mongodb-org-7.0]
name=MongoDB Repository
baseurl=https://repo.mongodb.org/yum/redhat/9/mongodb-org/7.0/x86_64/
gpgcheck=1
enabled=1
gpgkey=https://pgp.mongodb.com/server-7.0.ascSalve o arquivo e saia do editor quando terminar.
Agora execute o comando abaixo para habilitar o repositório Node.js 18 para AlmaLinux.
sudo dnf module enable nodejs:18 -y
Em seguida, execute o seguinte comando ‘ dnf ‘ para instalar os ‘ Development Tools ‘, servidor MongoDB, Node.js, NPM, Git e ImageMagick.
sudo dnf group install "Development Tools" -y
sudo dnf install nodejs npm git ImageMagick mongodb-org -y
Após a instalação ser concluída, inicie e habilite o serviço ‘ mongod ‘ com o seguinte comando.
sudo systemctl enable --now mongod
sudo systemctl status mongodVocê pode ver abaixo que o servidor MongoDB está em execução e habilitado.

Por fim, verifique a versão do Node.js com o comando abaixo. Você deve ver que o Node.js 18 está instalado no servidor Alma Linux.
node --version
npm --versionConfigurando o servidor MongoDB e banco de dados para NodeBB
Com as dependências instaladas, você protegerá o servidor MongoDB habilitando a autenticação por senha e configurando a senha de administrador do MongoDB. Depois disso, você também criará um novo banco de dados MongoDB e um usuário para a instalação do NodeBB.
Faça login no servidor MongoDB com o comando ‘ mongosh ‘ abaixo.
mongosh
Uma vez logado, mude para o banco de dados ‘ admin ‘ e execute a consulta abaixo para configurar uma senha de administrador para o MongoDB. Certifique-se de alterar a ‘ MongoDBAdminPass ‘ pela sua combinação de senha.
use admin
db.createUser( { user: "admin", pwd: "MongoDBAdminPass", roles: [ { role: "root", db: "admin" } ] } )Agora execute as seguintes consultas para criar um novo banco de dados e usuário ‘ nodebb ‘ com a senha ‘NodeBBPassword’. Você pode ajustar os detalhes do banco de dados a seguir conforme necessário.
use nodebb
db.createUser( { user: "nodebb", pwd: "NodeBBPassword", roles: [ { role: "readWrite", db: "nodebb" }, { role: "clusterMonitor", db: "admin" } ] } )Digite ‘ quit() ‘ para sair do servidor MongoDB.

Depois de configurar a senha de administrador para o MongoDB, vamos habilitar a autenticação do MongoDB.
Abra o arquivo de configuração padrão do MongoDB ‘ /etc/mongod.conf ‘ com o editor ‘ nano ‘.
sudo nano /etc/mongod.confPara habilitar a autenticação do MongoDB, descomente a linha ‘ security ‘ e adicione ‘ authorization: enabled ‘ como a seguinte:
security:
authorization: enabledSalve e saia do arquivo quando terminar.
Agora execute o seguinte comando ‘ systemctl ‘ para reiniciar o servidor MongoDB e aplicar suas alterações. A autenticação do MongoDB deve estar habilitada agora.
sudo systemctl restart mongodPara verificar a configuração, execute o comando ‘ mongosh ‘ abaixo para fazer login no MongoDB usando o usuário ‘ nodebb ‘. Insira a senha para o usuário ‘ nodebb ‘.
mongosh "mongodb://127.0.0.1:27017" --username nodebb --authenticationDatabase nodebbInstalando o NodeBB
Agora que você configurou o servidor MongoDB, está pronto para instalar o NodeBB no servidor Alma Linux.
Adicione um novo usuário e grupo do sistema ‘ nodebb ‘ com o seguinte comando.
sudo adduser -r -M -d /opt/nodebb -U nodebbBaixe o código-fonte do NodeBB para o diretório ‘ /opt/nodebb ‘ e altere a propriedade para o usuário ‘ nodebb ‘.
git clone -b v3.x https://github.com/NodeBB/NodeBB.git /opt/nodebb
sudo chown -R nodebb:nodebb /opt/nodebbVá para o diretório ‘ /opt/nodebb ‘ e execute o script de configuração do NodeBB como a seguinte:
cd /opt/nodebb
sudo su -s /bin/bash -c "./nodebb setup" nodebbAqui, você será questionado sobre algumas configurações do NodeBB:
- Insira seu nome de domínio para o NodeBB, como https://forum.howtoforge.local.
- Pressione ENTER na configuração secreta do NodeBB. Deixe como padrão.
- Insira não para desabilitar o acesso anônimo ao NodeBB.
- Selecione o MongoDB como o banco de dados.
- Insira os detalhes do seu banco de dados MongoDB no formato como mongodb://nodebb:[email protected]:27017/nodebb.
- Insira o novo usuário administrador e endereço de e-mail para o NodeBB.
- Insira a senha para seu usuário administrador do NodeBB e repita.
Após o processo ser concluído, você verá uma saída como esta:

Agora você pode iniciar ou parar o NodeBB manualmente executando o script ‘ nodebb ‘ como a seguinte:
sudo su -s /bin/bash -c "./nodebb start" nodebb
sudo su -s /bin/bash -c "./nodebb stop" nodebb
Executando o NodeBB como um serviço systemd
Para gerenciar o NodeBB mais facilmente, você pode controlar o processo do NodeBB usando a utilidade ‘ systemctl ‘. Para fazer isso, você precisa criar um novo arquivo de serviço systemd para executar o NodeBB.
Crie um novo arquivo de serviço systemd ‘ /etc/systemd/system/nodebb.service ‘ com o editor ‘ nano ‘.
sudo nano /etc/systemd/system/nodebb.serviceInsira a seguinte configuração para executar o NodeBB como um serviço systemd.
[Unit]
Description=NodeBB
Documentation=https://docs.nodebb.org
After=system.slice multi-user.target mongod.service
[Service]
Type=simple
User=nodebb
StandardError=syslog
SyslogIdentifier=nodebb
Environment=NODE_ENV=production
WorkingDirectory=/opt/nodebb
ExecStart=/bin/env node loader.js --no-silent --no-daemon
Restart=always
[Install]
WantedBy=multi-user.targetSalve o arquivo e saia do editor.
Recarregue o gerenciador systemd com o comando ‘ systemctl ‘ abaixo.
sudo systemctl daemon-reloadPor fim, inicie e habilite o serviço ‘ nodebb ‘, e então verifique para garantir que o serviço está em execução:
sudo systemctl enable --now nodebb
sudo systemctl status nodebbVocê pode ver abaixo que o NodeBB está em execução em segundo plano como um serviço systemd.

Configurando o Nginx como um proxy reverso
Agora que o NodeBB está em execução em segundo plano como um serviço, vamos instalar o Nginx e criar um novo bloco de servidor que será usado como um proxy reverso para o NodeBB.
Primeiro, execute o comando ‘ dnf ‘ abaixo para instalar o servidor web Nginx.
sudo dnf install nginx -y
Agora crie uma nova configuração do Nginx ‘ /etc/nginx/conf.d/nodebb.conf ‘ com o editor ‘ nano ‘.
sudo nano /etc/nginx/conf.d/nodebb.confInsira a seguinte configuração e certifique-se de alterar o parâmetro ‘ server_name ‘ com seu nome de domínio.
server {
listen 80;
server_name forum.howtoforge.local;
location / {
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header Host $http_host;
proxy_set_header X-NginX-Proxy true;
proxy_pass http://127.0.0.1:4567;
proxy_redirect off;
# Suporte ao Socket.IO
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
}
}Quando terminar, salve o arquivo e saia do editor.
Em seguida, execute o comando abaixo para verificar a sintaxe do Nginx. Se bem-sucedido, você terá uma saída ‘ syntax is ok - test is successful ‘.
sudo nginx -t
Por fim, execute o comando ‘ systemctl ‘ abaixo para iniciar, habilitar e verificar o servidor web Nginx.
sudo systemctl enable --now nginx
sudo systemctl status nginxVocê pode ver abaixo que o servidor web Nginx está em execução.

Protegendo o NodeBB com HTTPS
Neste ponto, sua instalação do NodeBB está pronta. Mas se você estiver em um nome de domínio público, deve proteger o NodeBB com HTTPS. Nesta seção, você configurará o HTTPS para o NodeBB com Certbot e Letsencrypt.
Instale o Certbot e o plugin Certbot Nginx com o seguinte comando:
sudo dnf install certbot python3-certbot-nginx -yAgora execute o comando ‘ certbot ‘ abaixo para proteger sua instalação do NodeBB com HTTPS. Certifique-se de alterar o nome de domínio e o endereço de e-mail neste comando.
sudo certbot --nginx --agree-tos --redirect --hsts --staple-ocsp --email [email protected] -d forum.howtoforge.localApós o processo ser concluído, seus certificados SSL/TLS estarão disponíveis no diretório ‘ /etc/letsencrypt/live/domain.com ‘ e sua instalação do NodeBB deve estar protegida com HTTPS.
Acessando o NodeBB
Abra seu navegador web e visite o nome de domínio do NodeBB, como https://forum.howtoforge.local. Se sua instalação for bem-sucedida, você verá a seguinte página inicial do NodeBB.

Conclusão
Parabéns! Você concluiu a instalação do NodeBB no servidor Alma Linux 9. Você tem o fórum NodeBB em funcionamento com o servidor MongoDB e Nginx como um proxy reverso. Você também protegeu a instalação do NodeBB com HTTPS através do Certbot e Letsencrypt.
Receba novas postagens na sua caixa de entrada
Sem spam. Cancele a assinatura a qualquer momento.