Git Product home page Git Product logo

kvramyasri7 / micro-dock8s Goto Github PK

View Code? Open in Web Editor NEW

This project forked from milan-shah/micro-dock8s

0.0 0.0 0.0 13.07 MB

Monolith application to Microservices. You can register and log into a web client, post photos to the feed, and process them using an image filtering microservice. Uses Docker, K8s, and Travis CI.

Shell 0.20% JavaScript 5.68% TypeScript 80.50% CSS 4.87% HTML 7.24% Dockerfile 1.50%

micro-dock8s's Introduction

Microservices-Docker-K8s

This is a simple cloud application that I developed alongside the Udacity Cloud Engineering Nanodegree. It allows users to register and log into a web client, post photos to the feed, and process photos using an image filtering microservice. Following are the services involved in this project:

  • “user” - allows users to register and log into a web client,
  • “feed” - allows users to post photos, and process photos using image filtering
  • “frontend” - acts as an interface between the user and the backend-services
  • "reverseproxy" - For resolving multiple services running on same port in separate containers

Correspondingly, the project is split into following parts:

  1. The RestAPI Feed Backend, a Node-Express feed microservice.
  2. The RestAPI User Backend, a Node-Express user microservice.
  3. The Simple Frontend - A basic Ionic client web application which consumes the RestAPI Backend.
  4. Nginx as a reverse-proxy server, when different backend services are running on the same port, then a reverse proxy server directs client requests to the appropriate backend server and retrieves resources on behalf of the client.

Docker

The application is divided the into smaller services for user, feed, frontend, reversproxy using Docker.

K8s

I have created Kubernetes resources and deployed the application to Kubernetes cluster using kops + kubectl. I have also extended the application with deployments to be able to apply rolling-updates and rollbacks.

Travis CI

I have also integrated Travis CI for automating continuous integration (CI) and continuous delivery (CD).

Screenshots

You can find the screenshots withing screenshots folder for below resources:

  1. Udagram application running on localhost
  2. Docker hub images
  3. Running containers locally
  4. Travis-CI in action

micro-dock8s's People

Contributors

milan-shah 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.