Skip to content

Latest commit

 

History

History
53 lines (41 loc) · 1.37 KB

README.md

File metadata and controls

53 lines (41 loc) · 1.37 KB

Microservices demo

This is a sample application that demonstrates a microservice architecture.

Architecture

Architecture diagram

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/
  • 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/
  • 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

Run the application

docker-compose

A docker-compose file is provided at the root of the repository to run the application.

docker-compose up -d

Publish

To 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 push

Kubernetes

In a near future :)