Estudo de caso didático

Deploy Docker em VPS com conflito de portas e proxy

Como organizar Docker, Nginx, DNS, SSL e containers quando mais de um sistema precisa conviver na mesma VPS.

Contexto

A empresa hospeda mais de um sistema na mesma VPS. Localmente, cada projeto usa portas parecidas; em produção, os sistemas rodam em containers. O risco aparece quando portas internas, portas expostas, redes Docker e regras do Nginx não estão documentadas.

Sintomas observados

  • Container sobe, mas o domínio aponta para o sistema errado
  • Backend funciona por IP e porta, mas falha pelo domínio
  • Frontend abre a home, mas rotas internas quebram ao atualizar
  • Certificado SSL funciona em um domínio e falha em outro
  • Logs de Nginx e Docker não são conferidos depois do deploy

Caminho de investigação

01

Desenhar o mapa de rede

O estudo começa listando containers, redes, portas internas, portas expostas e qual domínio deve chegar a cada serviço.

02

Separar DNS, proxy e aplicação

DNS aponta o nome; Nginx decide o destino; Docker isola serviços. Misturar esses papéis dificulta o diagnóstico.

03

Validar rotas de SPA e API

Aplicações React precisam devolver index.html em rotas internas; APIs precisam preservar headers e seguir para o backend correto.

04

Criar checklist pós-publicação

Deploy termina depois de testar home, rotas internas, API, formulário, sitemap, robots, ads.txt e logs.

Decisões técnicas

  • Evitar expor portas desnecessárias no host
  • Usar Nginx como fronteira para os domínios
  • Separar redes e nomes de projeto no Docker Compose
  • Documentar rollback e validação pós-deploy

Resultado esperado

O deploy deixa de depender de memória. A equipe passa a saber onde cada requisição entra, para onde ela vai e como validar se a versão nova realmente ficou saudável.

Como aplicar no seu cenário

Perguntas para comparar este caso com a sua realidade.

Use estas perguntas como uma triagem inicial antes de contratar, refatorar ou mudar infraestrutura.

Quando este caso se aproxima do meu deploy?

Quando mais de um sistema divide VPS, Nginx, Docker e DNS, e uma mudanca de rota, porta ou certificado pode afetar outro dominio.

Que mapa montar antes do deploy?

Liste dominios, blocos Nginx, containers, redes Docker, portas internas, portas expostas, variaveis e caminho de rollback.

Qual teste nao pode ficar para depois?

Abrir home, rotas internas da SPA, API, formulario, sitemap, robots, ads.txt e logs logo apos subir a versao.

WhatsApp(12) 98855-9188