wils@web ~ $ cat ~/ajuda/como-configurar-um-proxy-reverso-com-nginx-1-22-para-aplicacoes-em-conteineres-docker.md

DevOps

Como configurar um proxy reverso com Nginx 1.22 para aplicações em contêineres Docker

atualizado em 21/07/2026

Configurar um proxy reverso com Nginx para aplicações em contêineres Docker pode melhorar a escalabilidade e a segurança das suas aplicações. Neste manual, vamos abordar o passo a passo para realizar essa configuração utilizando o Nginx 1.22.

Pré-requisitos

  • Servidor com Linux (Ubuntu, CentOS, etc.)
  • Docker e Docker Compose instalados
  • Conhecimento básico em Nginx

Passo 1: Instalar o Nginx

Primeiramente, você precisa instalar o Nginx. Execute o seguinte comando:

sudo apt update
sudo apt install nginx

Passo 2: Criar um contêiner Docker

Vamos criar um contêiner simples usando o Docker. Para este exemplo, usaremos uma aplicação Node.js:

mkdir meu_app
cd meu_app

cat > Dockerfile <<EOF
FROM node:14
WORKDIR /usr/src/app
COPY package*.json ./
RUN npm install
COPY . .
CMD [ "npm", "start" ]
EOF

cat > package.json <<EOF
{
  "name": "meu_app",
  "version": "1.0.0",
  "main": "index.js",
  "scripts": {
    "start": "node index.js"
  },
  "dependencies": {
    "express": "^4.17.1"
  }
}
EOF

cat > index.js <<EOF
const express = require('express');
const app = express();
const PORT = process.env.PORT || 3000;

app.get('/', (req, res) => {
  res.send('Hello World!');
});

app.listen(PORT, () => {
  console.log(`Server running on port ${PORT}`);
});
EOF

docker build -t meu_app .
docker run -d -p 3000:3000 --name meu_app meu_app

Passo 3: Configurar o Nginx como Proxy Reverso

Agora, vamos configurar o Nginx para redirecionar as requisições para o contêiner Docker:

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

Adicione o seguinte conteúdo:

server {
    listen 80;
    server_name meu_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;
    }
}

Salve e saia do editor. Em seguida, ative a configuração:

sudo ln -s /etc/nginx/sites-available/meu_app /etc/nginx/sites-enabled/
sudo nginx -t
sudo systemctl restart nginx

Conclusão

Agora você configurou com sucesso um proxy reverso com Nginx para sua aplicação em contêiner Docker. Lembre-se de substituir meu_dominio.com pelo seu domínio real. Uma dica importante é sempre verificar os logs do Nginx e do Docker para solucionar problemas que possam surgir.

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.