Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/notyusheng/transcribe-translate_kubernetes
Local web app for transcription and translation services for audio and video using Whisper models
https://github.com/notyusheng/transcribe-translate_kubernetes
docker full-stack k8s kubernetes nodejs react reactjs self-hosted speech-to-text transcribe translate whisper
Last synced: about 1 month ago
JSON representation
Local web app for transcription and translation services for audio and video using Whisper models
- Host: GitHub
- URL: https://github.com/notyusheng/transcribe-translate_kubernetes
- Owner: NotYuSheng
- License: mit
- Created: 2024-11-21T15:22:08.000Z (about 1 month ago)
- Default Branch: main
- Last Pushed: 2024-11-21T15:56:09.000Z (about 1 month ago)
- Last Synced: 2024-11-21T16:38:11.509Z (about 1 month ago)
- Topics: docker, full-stack, k8s, kubernetes, nodejs, react, reactjs, self-hosted, speech-to-text, transcribe, translate, whisper
- Homepage:
- Size: 11.7 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Transcribe Translate (Kubernetes Version)
This is the **Kubernetes version** of the Transcribe Translate project, a web application for transcription and translation services. It uses pre-built Docker images managed by workflows in the [original repository](https://github.com/NotYuSheng/Transcribe-Translate).> [!WARNING]
> This project is incomplete and still a work in progress## Features
- **Accurate Transcriptions**: Powered by Whisper models for high-quality audio transcription.
- **Language Translation**: Seamless translation of transcribed content.
- **Kubernetes-Optimized Architecture**: Designed for deployment on Kubernetes clusters, offering scalability and resource management.## Docker Images
This version relies on Docker images created and managed via GitHub workflows in the original repository:| Component | Image URL |
| --------- | --------------------------------------------------------- |
| Backend | `ghcr.io/notyusheng/transcribe-translate-backend:latest` |
| Frontend | `ghcr.io/notyusheng/transcribe-translate-frontend:latest` |
| Nginx | `ghcr.io/notyusheng/transcribe-translate-nginx:latest` |## Getting Started
The following instructions are for Ubuntu
1. Install kubectl
```
sudo apt install -y curl
curl -LO "https://dl.k8s.io/release/$(curl -L -s https://dl.k8s.io/release/stable.txt)/bin/linux/amd64/kubectl"
sudo install -o root -g root -m 0755 kubectl /usr/local/bin/kubectl
kubectl version --client
```
2. Install Minikube
```
curl -LO https://storage.googleapis.com/minikube/releases/latest/minikube-linux-amd64
sudo install minikube-linux-amd64 /usr/local/bin/minikube
minikube version
```## Deployment Steps
1. Clone and navigate to folder
```
git clone https://github.com/NotYuSheng/Transcribe-Translate_Kubernetes.git
cd Transcribe-Translate_Kubernetes
```2. Start Minikube
Set up a single-node Kubernetes cluster
```
minikube start --driver=docker
```3. Verify that the cluster is running
```
kubectl get nodes
```4. Apply Kubernetes Manifests
Deploy the app using the Kubernetes manifests in the k8s/ directory:
```
kubectl apply -f k8s/
```5. Check Deployments and Services
- View Pods to check the containers are running
```
kubectl get pods
```
- Check services (to see exposed ports):```
kubectl get services
```6. Access the Application
Use Minikube to access the Nginx service:
```
minikube service nginx
```## Useful Commands
1. View logs
```
kubectl logs
```2. Restart Pods
```
kubectl delete pod
```3. Delete Resources
```
kubectl delete -f backend-deployment.yaml
kubectl delete -f frontend-deployment.yaml
kubectl delete -f nginx-deployment.yaml
kubectl delete -f nginx-service.yaml
```