NathanDrake007 / Audio-Converter

Mp4 to Mp3 converter using microservices architecture with python

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Micropy


Overview

Mp4 to Mp3 converter using microservices architecture.

System Architecture

fig. 1 Overview of system

Working 1. Tech Stack

  • _Programming languages: Python.
  • _Development: Flask, Docker, Kubernetes, Rabbitmq, Mysql.

System components

Component Description
Auth service Handle authentication and validation of user using jwt
Converter service Convert Mp4 file to Mp3 file and store them in MongoDB
Gateway service Handle all client request and route them to appropriate
Notification service After conversion sends notification to user via mail
RabbitMq server Message queue used to store the conversion task

Running Guide

Prerequisits

To view the docker container in kubernetes

run this command in terminal - k9s

  1. Enable ingress plugin for minikube.
minikube addon enable ingress
  1. Map the loopback address /etc/hosts.

127.0.0.1 kubernetes.docker.internal

  1. Run minikube tunnel.
minikube tunnel
  1. Add image name in *-deploy.yaml files and email credentials in secret.yaml file of notification serivce.

  2. Build docker image in every service and host in remote repository (Docker Hub).

Docker build .
Docker tag container_id:latest
Docker push
  1. Run the service by pulling the image and hosting on kubernetes by running this command in manifest folder of each service.
kubectl apply -f ./

Limitation

Doesn't support multiple file uploads.

About

Mp4 to Mp3 converter using microservices architecture with python


Languages

Language:Python 86.9%Language:Dockerfile 13.1%