Como Instalar o Stack LEMN (Linux, Nginx, MariaDB, Node.js) no Ubuntu 24.04 LTS

Como Instalar o Stack LEMN (Linux, Nginx, MariaDB, Node.js) no Ubuntu 24.04 LTS

Guia completo para configurar um servidor com Linux, Nginx, MariaDB, Node.js e swap ativo no Ubuntu 24.04.

O que é o LEMN?

LEMN é um acrônimo para:

  • Linux – o sistema operacional base (Ubuntu 24.04 LTS);
  • Nginx – servidor web e proxy reverso leve e rápido;
  • MariaDB – sistema de banco de dados relacional;
  • Node.js – ambiente de execução para JavaScript no backend.

Pré-requisitos

  • Ubuntu 24.04 LTS com acesso root ou sudo
  • Conexão com a internet

1. Atualize o sistema

sudo apt update && sudo apt upgrade -y

2. Configure a SWAP (memória virtual)

Se o seu servidor tem pouca RAM (ex: 1 GB), a SWAP evita travamentos e melhora o desempenho de compilação e execução.


sudo fallocate -l 8G /swapfile
sudo chmod 600 /swapfile
sudo mkswap /swapfile
sudo swapon /swapfile
echo '/swapfile none swap sw 0 0' | sudo tee -a /etc/fstab
    

Verifique se está ativa:

swapon --show

3. Instale o Nginx

sudo apt install nginx -y

Verifique se está funcionando:

sudo systemctl status nginx

4. Instale o MariaDB

sudo apt install mariadb-server -y

Proteja com:

sudo mysql_secure_installation

5. Instale o Node.js e o npm

Adicione o repositório oficial do Node.js:

curl -fsSL https://deb.nodesource.com/setup_20.x | sudo -E bash -

Instale o Node.js:

sudo apt install nodejs -y

Verifique as versões:


node -v
npm -v
    

6. Atualize o npm para a última versão

O npm pode estar desatualizado no repositório. Atualize com:

sudo npm install -g npm@latest

Confirme a nova versão:

npm -v

7. Instale o PM2

sudo npm install -g pm2

8. Exemplo de App Node.js + PM2


mkdir ~/meuapp && cd ~/meuapp
nano index.js
    

Coloque este código:


const http = require('http');
const port = 3000;

http.createServer((req, res) => {
  res.writeHead(200, {'Content-Type': 'text/plain'});
  res.end('Hello from Node.js!');
}).listen(port);

console.log(`Servidor rodando em http://localhost:${port}`);
    

Inicie o app com PM2:


pm2 start index.js
pm2 startup
pm2 save
    

9. Configure o Nginx como Proxy Reverso

Crie um novo arquivo de configuração:

sudo nano /etc/nginx/sites-available/meuapp

Adicione:


server {
    listen 80;
    server_name seu_dominio.com;

    location / {
        proxy_pass http://localhost:3000;
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection 'upgrade';
        proxy_set_header Host $host;
        proxy_cache_bypass $http_upgrade;
    }
}
    

Ative e teste:


sudo ln -s /etc/nginx/sites-available/meuapp /etc/nginx/sites-enabled/
sudo nginx -t
sudo systemctl reload nginx
    

10. Ative o firewall


sudo ufw allow 'Nginx Full'
sudo ufw allow OpenSSH
sudo ufw enable
    

11. (Opcional) Instale HTTPS com Certbot


sudo apt install certbot python3-certbot-nginx -y
sudo certbot --nginx
    

Conclusão

Você finalizou a instalação do stack LEMN com sucesso no Ubuntu 24.04 LTS! Com Nginx, MariaDB, Node.js, PM2 e swap configurados, seu servidor está pronto para rodar aplicações modernas com eficiência.

Veja também este guia prático de configuração com Nginx para aplicações corporativas como o Mattermost:

👉 Guia completo do Mattermost + Nginx

Comentários

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *