wils@web ~ $ cat ~/ajuda/como-configurar-uma-aplicacao-node-js-em-producao-com-pm2-e-nginx-no-ubuntu-22-04.md

Desenvolvimento

Como configurar uma aplicação Node.js em produção com PM2 e Nginx no Ubuntu 22.04

atualizado em 05/09/2026

Este manual irá guiá-lo na configuração de uma aplicação Node.js em produção utilizando PM2 e Nginx no Ubuntu 22.04.

Pré-requisitos

  • Ubuntu 22.04 instalado
  • Node.js e npm instalados
  • Acesso root ou sudo

Passo 1: Instalar PM2

PM2 é um gerenciador de processos para aplicações Node.js. Para instalá-lo, execute:

sudo npm install -g pm2

Passo 2: Criar sua aplicação Node.js

Crie um diretório para sua aplicação e inicie um novo projeto:

mkdir minha-aplicacao
cd minha-aplicacao
npm init -y

Crie um arquivo app.js com o seguinte conteúdo:

const express = require('express');
const app = express();
const PORT = process.env.PORT || 3000;

app.get('/', (req, res) => {
    res.send('Olá, mundo!');
});

app.listen(PORT, () => {
    console.log(`Servidor rodando na porta ${PORT}`);
});

Passo 3: Iniciar a aplicação com PM2

Inicie sua aplicação usando PM2:

pm2 start app.js --name minha-aplicacao

Para garantir que a aplicação reinicie após reinicializações do servidor, execute:

pm2 startup
pm2 save

Passo 4: Instalar Nginx

Instale o Nginx com o seguinte comando:

sudo apt update
sudo apt install nginx

Passo 5: Configurar Nginx

Crie um arquivo de configuração para sua aplicação:

sudo nano /etc/nginx/sites-available/minha-aplicacao

Adicione o seguinte conteúdo:

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 a configuração:

sudo ln -s /etc/nginx/sites-available/minha-aplicacao /etc/nginx/sites-enabled/

Teste a configuração e reinicie o Nginx:

sudo nginx -t
sudo systemctl restart nginx

Conclusão

Agora sua aplicação Node.js está rodando em produção com PM2 e Nginx. Lembre-se de monitorar sua aplicação e ajustar as configurações conforme necessário. Uma dica é configurar HTTPS usando Certbot para segurança adicional.

Precisa de ajuda com isso no seu servidor? A gente resolve pra você.

falar no WhatsApp

// deu erro ou não funcionou?

Achou algo errado neste manual?

Conta pra gente o que deu errado ou qual erro apareceu — a gente corrige. Se quiser retorno, deixe seu contato.