| Home | Escopo e Cronograma | Processo | Mockups | Configuração | Arquitetura | Código | BD | Qualidade |
Diagrama de Deploy
Visão Geral
A aplicação está hospedada na AWS, utilizando uma instância EC2 para orquestração dos containers. O deploy é automatizado via GitLab Runner, que realiza o pull das imagens do ECR (Elastic Container Registry). O tráfego da aplicação é roteado por meio do Traefik.
Componentes
- Client: Usuário acessando a aplicação via navegador.
- EC2: Instância responsável por hospedar os containers da aplicação.
- GitLab Runner: Runner configurado na EC2 que realiza o deploy automático via GitLab.
- ECR: Repositório de imagens Docker utilizadas na aplicação.
- Traefik: Proxy reverso e load balancer, responsável por rotear requisições.
- Front-End: Interface da aplicação desenvolvida com React.
- Back-End: API desenvolvida com NestJS, conectada ao banco e à Amazon SES.
- Database: Banco de dados PostgreSQL, acessado por rede privada.
- Amazon SES: Serviço de envio de e-mails utilizado pelo backend.
Redes
Rede Pública
- Traefik
- Front-End (React)
- Back-End (NestJS)
Rede Privada
- Banco de Dados (PostgreSQL)
Fluxo de Deploy
- GitLab Runner é acionado, na main, por push no repositório.
- Runner faz build e push da imagem Docker para o ECR.
- Instância EC2 puxa a nova imagem do ECR.
- Traefik roteia as requisições para front-end ou back-end conforme a URL.
- Backend se comunica com:
- Banco de dados via rede privada.
- Amazon SES para envio de e-mails.