Giter VIP home page Giter VIP logo

microservice's Introduction

1. Introduction:

  • Application Name: EMart
  • Architecture: Microservices
  • Front End: API Gateway with Nginx, Angular (client app)
  • Endpoints: root, /api, /webapi

DESCRIPTION

The project entails containerizing a microservice application, facilitating efficient deployment and scalability. Utilizing Docker and Docker Compose, the microservice stack includes NGINX as the API gateway, Angular for the client-side interface, Node.js and Java for backend APIs, along with MongoDB and MySQL databases. Hosted within a mono repository on GitHub, the microservices are orchestrated to work seamlessly together.

The process involves writing Dockerfiles for each microservice to define their build processes and hosting configurations. Additionally, a Docker Compose file is crafted to orchestrate the containers, managing dependencies and environment variables.

2. Microservices:

  • Client App (Angular)
  • Connected to /api served by NodeJS (Mart API)
  • Requires MongoDB Database (deployed as a container)
  • Web API:
  • Connects to /webapi served by Java (Books API)
  • Requires MySQL Database
  • All components (Nginx, Angular, NodeJS, Java, MongoDB, MySQL) run as containers.

3. Scalability and Flexibility:

  • Scalable from a developer's perspective.
  • Additional microservices (e.g., videos, payment gateway, cart) can be added.

4. Setting Up on Virtual Machine:

  • Utilizes Docker and Docker Compose.
  • Requires the EMart app repository.

steps to setting up virtual machine


5. Steps for Setup:

  • Clone the EMart app repository.
  • Open Docker Compose YAML file.
  • Run Docker Compose commands
  • Build images and run containers.

steps for setup


Now the containers are running:


containers


6. Accessing the Application:

  • Access the application through the browser using the VM's IP address and port 80.
  • Interact with the front end and register a user.
  • Demonstrates interaction with NodeJS (MongoDB) and Java (MySQL)

Copy the ip address of the VM:


ip address


access the application through the browser using the VM's IP address:


application


Interact with the front end and register a user(Register and Login):


to Sign up



to register




Login to the application



That's Micro-service Application working on Docker platform

microservice's People

Contributors

fab199 avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.