The project consists of 5 different service
- Gateway (Python)
- Auth (Python)
- Video-to-Mp3 Converter (Python)
- Notification (Python)
- RabbitMQ
Change directory to each of Python service folder (auth,gateway,converter,notification), then run commands to create virtual environment and install dependency
python -m venv venv
.\venv\bin\Activate.ps1
pip install -r requirements.txt
Install these dependency
- kubectl (K8s CLI tool to interact with Kubernetes API)
- K9s (K8s Management GUI)
- minikube (Local Kubernetes Instance Container)
- AWS CLI
- AWS Tools for Powershell (ECR module)
- MySQL 8.
The auth service pod will interact with MySQL running local machine host (native) Change directory to auth and execute init.sql
mysql -u root -e "source init.sql"
Start minikube
minikube start
Execute script
.\deployment\StartDeploy.ps1
The project is built initially based on FreeCodeCamp guide for Microservice & Kubernetes video