Skip to content

GitLab

  • Menu
Projects Groups Snippets
    • Loading...
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in
  • Wiki Wiki
  • Project information
    • Project information
    • Activity
    • Labels
    • Planning hierarchy
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 0
    • Issues 0
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 0
    • Merge requests 0
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Monitor
    • Monitor
    • Incidents
  • Packages & Registries
    • Packages & Registries
    • Package Registry
    • Infrastructure Registry
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Repository
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • Soul Amada
  • WikiWiki
  • Wiki
  • arquitetura

Last edited by Thomas Melison Rodrigues Mello Jun 20, 2025
Page history

arquitetura

Home Escopo Processo Design/Mockups Configuração Arquitetura Gerência BD Qualidade Frontend Backend Analytics

Página da Arquitetura do Projeto Soul Amada

Arquitetura na nuvem:

Infraestrutura_AGES

A API utilizada para a aplicação do projeto Soul Amada é executada em um container Docker dentro que é executado dentro de uma EC2, que está em uma VPC privada dentro de uma sub rede própria desta EC2. A aplicação backend se comunica com o banco de dados que guarda os dados da aplicação Para o banco de dados, o Supabase é utilizado como um banco de dados auto gerenciado e escalável. Além disto, um bucket do S3 é utilizado para o armazenamento de arquivos da aplicação, tornando o manejo de arquivos por parte da API um processo mais fácil. Para facilitar o acesso a API, um API gateway foi provisionado para redirecionar as chamadas para a EC2.

Pipeline de Deploy:

CICDPipelineAGES3

O processo de deploy acontece quando um commit é feito na branch "main" do repositório do backend da aplicação. Com isto, um runner do Gitlab é executado na própria EC2 onde a API está hospedada, onde executará os testes e enviará as migrações do Prisma para o banco de dados no Supabase. Após realizar a etapa de enviar as migrações para o banco de dados, o runner faz o "build" da imagem da API, finaliza algum container da API que já esteja em execução caso este exista, e executa um novo container com a nova imagem criada.

Pipeline de Deploy do FrontEnd:

AGES_-_Page_3

O deploy do front end também utilizará o mesmo runner do git lab na EC2 para realizar a criação da APK e da IPA. Este runner enviará estes arquivos para uma pasta de releases no S3, onde o download das versões será disponibilizado.

Clone repository
  • Banco de Dados
  • arquitetura
  • configuracao
  • Home