This is a sample application that demonstrates a microservice architecture.
The application is composed of the following microservices:
- article-service: Golang application that manages the articles.
- Connected to a MongoDB database.
- GET /healthz
 - GET /article/
 - POST /article/
 - DELETE /article/:articleId/
 
 
 - Connected to a MongoDB database.
 - cart-service: Golang application that manages the shopping cart.
- Connected to a Redis database.
- GET /healthz
 - GET /cart/:cartId/
 - PUT /cart/:cartId/
 - DELETE /cart/:cartId/
 
 
 - Connected to a Redis database.
 - User frontend: Vuejs application that serves as the frontend.
- GET /
 - GET /shop
 - GET /cart
 
 - Admin frontend: Vuejs application that serves as the admin
frontend.
- GET /
 - GET /articles
 - GET /about
 
 
A docker-compose file is provided at the root of the repository to run the application.
docker-compose up -dTo publish all the container images to the GCP training registry, just run the following commands:
gcloud auth configure-docker europe-west1-docker.pkg.dev
docker-compose -f docker-compose-push.yml build
docker-compose -f docker-compose-push.yml pushIn a near future :)