https://github.com/matheusgeiger/ammo
desafio fullstack
https://github.com/matheusgeiger/ammo
Last synced: about 1 month ago
JSON representation
desafio fullstack
- Host: GitHub
- URL: https://github.com/matheusgeiger/ammo
- Owner: MatheusGeiger
- Created: 2020-01-20T14:37:03.000Z (over 6 years ago)
- Default Branch: master
- Last Pushed: 2023-03-04T16:52:08.000Z (about 3 years ago)
- Last Synced: 2025-03-10T19:57:40.978Z (about 1 year ago)
- Language: JavaScript
- Homepage:
- Size: 134 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Projeto agredador de três microserviços
## SOBRE ESTE REPOSITÓRIO
Este repositório contém três micro serviços cujo o intuito como um todo é permitir um CRUD de produtos em um banco de dados não relacional, propriciar uma interface para a API que fará a comunicação com o banco de dados e também ter uma interface final para o usuário.
### ./app
Projeto em microserviço que cujo sua intenção é implementar uma API para cadastro, alteração, deleção e pesquisa de produtos.
Este micro serviço realiza uma comunicação com um banco de dados não relacional (MongoDB)
mais detalhes sobre o projeto em .app/README.md
### ./client-api
Projeto em microserviço que cujo sua intenção é implementar uma interface sobre o microserviço de API para cadastro, alteração, deleção de produtos
Este micro serviço realiza uma comunicação CRUD com o microserviço de API.
mais detalhes sobre o projeto em .client-api/README.md
### ./client
Projeto em microserviço que cujo sua intenção é implementar uma página para o usuário final que acessa o site podendo pesquisar o produto,verificar todos os dados dos produtos cadastrador na api.
Este micro serviço realiza uma comunicação GET com o microserviço de API.
mais detalhes sobre o projeto em .client-api/README.md
### Executar o projeto local
Projeto em ambiente de container utilizando o docker, portanto é preciso ter o docker instalado na máquina para a execução do projeto.
Para executar o projeto localmente basta utilizar o comando `docker-compose up --build`
Após execução do processo de build e up dos containers, teremos a seguinte estrutura.
0.0.0.0:3000->3000/tcp, 0.0.0.0:9228->9228/tcp -> client-api
0.0.0.0:3002->3002/tcp, 0.0.0.0:9227->9227/tcp -> client-view
0.0.0.0:3001->3001/tcp, 0.0.0.0:9229->9229/tcp -> app_api
0.0.0.0:27017->27017/tcp -> mongo
client-api é responsável pelo client de CRUD para produtos, o mesmo está executando na porta 3000
client-view é responsável pela tela que o usuário final que acessa o site pode buscar produtos, e o mesmo está executando na porta 3002
app_api é a API responsável para a comunicação com os demais serviços e comunicação com o banco de dados não relacional para cadastro de produtos
mongo é o banco de dados utilizado para manter os dados dos produtos persistidos em uma base de dados