Mp4 to Mp3 converter using microservices architecture.
Working 1. Tech Stack
- _Programming languages:
Python
. - _Development:
Flask
,Docker
,Kubernetes
,Rabbitmq
,Mysql
.
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 |
Prerequisits
To view the docker container in kubernetes
run this command in terminal -
k9s
- Enable ingress plugin for minikube.
minikube addon enable ingress
- Map the loopback address /etc/hosts.
127.0.0.1 kubernetes.docker.internal
- Run minikube tunnel.
minikube tunnel
-
Add image name in *-deploy.yaml files and email credentials in secret.yaml file of notification serivce.
-
Build docker image in every service and host in remote repository (Docker Hub).
Docker build .
Docker tag container_id:latest
Docker push
- Run the service by pulling the image and hosting on kubernetes by running this command in manifest folder of each service.
kubectl apply -f ./
Doesn't support multiple file uploads.