Demonstração de proxy reverso utilizando Nginx (portas 80 e 443), um frontend Express (porta 3000) e um backend Express (porta 4000), executado via Docker.
Cliente
│
▼
Nginx :80 / :443 (proxy reverso)
├── /api/* → Backend :4000
└── /* → Frontend :3000
- Docker Desktop instalado e em execução
Na raiz do projeto, execute:
docker compose up --buildIsso irá:
- Construir as imagens do frontend, backend e Nginx
- Gerar o certificado SSL autoassinado automaticamente
- Subir os três containers conectados em rede
| URL | Descrição |
|---|---|
http://localhost |
Redireciona automaticamente para HTTPS |
https://localhost |
Página do frontend |
https://localhost/api/status |
Status do backend |
https://localhost/api/produtos |
Lista de produtos (exemplo) |
O certificado é autoassinado, então o navegador exibirá um aviso de segurança. Clique em "Avançado" → "Continuar assim mesmo" para prosseguir.
docker compose downProxy Reverso/
├── frontend/
│ ├── Dockerfile
│ ├── server.js # Servidor Express (porta 3000)
│ ├── package.json
│ └── public/
│ ├── index.html
│ └── style.css
├── backend/
│ ├── Dockerfile
│ ├── server.js # API Express (porta 4000)
│ └── package.json
├── nginx/
│ ├── Dockerfile # Gera SSL na build
│ └── nginx.conf # Configuração do proxy reverso
├── docker-compose.yml
└── README.md