wils@web ~ $ cat ~/ajuda/como-fazer-o-deploy-de-uma-aplicacao-node-js-usando-pm2-5-2-0-e-docker-guia-passo-a-passo.md

Desenvolvimento

Como fazer o deploy de uma aplicação Node.js usando PM2 5.2.0 e Docker: Guia passo a passo

atualizado em 03/09/2026

Este manual fornece um guia passo a passo sobre como fazer o deploy de uma aplicação Node.js utilizando PM2 5.2.0 e Docker.

Introdução

O PM2 é um gerenciador de processos para aplicações Node.js que facilita o gerenciamento e a manutenção de aplicações em produção. O Docker, por sua vez, é uma plataforma que permite empacotar aplicações e suas dependências em contêineres. Juntos, eles proporcionam uma solução robusta para o deploy de aplicações.

Pré-requisitos

  • Node.js instalado
  • Docker instalado
  • PM2 5.2.0 instalado

Passo a Passo

1. Criar a Aplicação Node.js

Primeiro, crie uma nova aplicação Node.js:

mkdir minha-aplicacao && cd minha-aplicacao
npm init -y
npm install express

Crie um arquivo chamado 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}`);
});

2. Criar o Dockerfile

Crie um arquivo chamado Dockerfile com o seguinte conteúdo:

FROM node:14

WORKDIR /usr/src/app

COPY package*.json ./

RUN npm install

COPY . .

CMD ["pm2-runtime", "start", "app.js"]

3. Criar o arquivo .dockerignore

Crie um arquivo chamado .dockerignore para evitar copiar arquivos desnecessários:

node_modules
npm-debug.log

4. Construir a Imagem Docker

Execute o seguinte comando para construir a imagem Docker:

docker build -t minha-aplicacao .

5. Executar o Contêiner

Agora, execute o contêiner:

docker run -d -p 3000:3000 minha-aplicacao

6. Verificar se a Aplicação está Rodando

Acesse http://localhost:3000 no seu navegador. Você deve ver a mensagem 'Olá, Mundo!'

Conclusão

Você agora tem uma aplicação Node.js rodando em um contêiner Docker, gerenciada pelo PM2. Para uma melhor performance, considere configurar variáveis de ambiente e persistência de dados.

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.