Este projeto contém um arquivo Makefile para build & deploy da app usando docker compose
- docker compose
- conta + token no dockerhub.com
O arquivo docker compose contém:
- nginx load balancer
- app 1
- app 2
- banco de dados postgres
flowchart LR
USER[User] -->|request http://localhost| A[Nginx]
A[Nginx] --> B(app1)
A[Nginx] --> C(app2)
B(app1) --> D[(Database)]
C(app2) --> D[(Database)]
- Build
Execute "make build-app" para build da imagem usando o código que está na raiz do projeto + arquivo Dockerfile, também presente na raiz.
A imagem é buildada com a tag rinhadebackend.
- Push
Execute "make push-image". Tenha em mãos o token para envio da imagem para o Dockerhub. Este passo também modifica o arquivo docker-compose.yaml com o endereço da imagem gerada neste passo.
- Run
Execute "make start-services" para inicar o docker-compose.
- Local test
Execute make start-services-local-dev para iniciar um docker compose que faz build local da app, ignorando push, etc. Ideal para testes.
- Stop
Execute "make stop" para encerrar qualquer container em execução.
- Enjoy