Home | Escopo | Processo | Design/Mockups | Configuração | Arquitetura | Gerência | Código | BD | Qualidade | Analytics |
---|
Arquitetura do Projeto
Descrição
...
Sumário
[...]
Arquitetura geral
Front-end
Votação para definição da tecnologia do frontend
Back-end
A arquitetura do projeto foi implementada baseada no tipo cliente-servidor. Onde o cliente é o aplicativo em React Native sendo executado no celular do usuário e o servidor é a aplicação Spring Boot, que é executada dentro de um container Docker dentro de uma máquina virtual EC2, no ambiante de nuvem AWS. Já por parte do código utilizamos o design pattern de Layers, este que possibilita a segregação de responsabilidades no backend por meio de camadas que se comunicam utilizando interfaces. Tais camadas implementadas foram a Controller para gerenciar as requisições dos clientes, a Service, encarregada das regras de negócio, e os Repository e Model, que se responsabilizam pela escrita e leitura no banco de dados.
Votação para definição da tecnologia do backend
Definimos Java e SprintBoot
- Downloads
Programa | Descrição |
---|---|
Como fazer o download do Java 21 | |
Como fazer o download do Maven 3.9.X | |
Como fazer o download do Postman | |
Como fazer o download da IDE IntelliJ |
Deploy
Estimativa de custo: infra_cost_estimate.pdf
Como fazer o deploy
Requisitos:
- Docker
- Repositório backend clonado
- Ferramenta para SSH
- Conta no DockerHub
Para o backend: 1 - Com projeto clonado na máquina local, rodar o comando no mesmo diretório:
mvn clean install
2 - Gerar a imagem do container Docker que irá conter nosso serviço:
docker build -t <userDockerhub>/iacc_backend:latest .
3 - Teste localmente o container para ver se ta tudo okay com o comando:
docker run -p 8080:8080 iacc_backend
4 - Faça login com suas credenciais do Dockerhub:
docker login
5 - Depois subir a imagem para o repositório do Dockerhub:
docker push <userDockerhub>/iacc_backend:latest
6 - Acesse remotamente a EC2 com ssh (peça a chave .pem para os AGES 3 ou 4):
ssh -i "iacc.pem" [email protected]
7 - Baixar a imagem do Dockerhub do nosso container dentro da EC2 após repetir o passo 4 nela:
docker pull <userDockerhub>/iacc_backend:latest
8 - Rodar o container:
sudo docker run -d -p 8080:8080 <userDockerhub>/iacc_backend:latest