Kubernetes Deployment
Deploy KubeMate on Kubernetes itself for production environments. This method is ideal for teams who want high availability, scalability, and want to leverage Kubernetes' orchestration capabilities.
Prerequisites
Kubernetes cluster running (version 1.20+ recommended)
kubectl configured with cluster access
Helm 3 installed (for Helm installation) OR kubectl (for manifests)
Persistent storage available (for database)
An LLM provider API key
Quick Start
The absolute minimum setup to start using KubeMate on Kubernetes is:
Choose your deployment method
You can deploy KubeMate using Helm charts for a simplified experience, or apply Kubernetes manifests directly using kubectl for full control.
Option 1: Helm Charts (Recommended)
Clone the repository
git clone https://github.com/mehdi-chebbi/k8s-web.git
cd k8s-webInstall using Helm
helm install KubeMate ./helm/KubeMate
# Or with custom values
helm install KubeMate ./helm/KubeMate -f values.yamlOption 2: Kubernetes Manifests
Clone the repository
git clone https://github.com/mehdi-chebbi/k8s-web.git
cd k8s-webApply Kubernetes manifests
# Apply all manifests at once
kubectl apply -f k8s/
# Or apply individually
kubectl apply -f k8s/db.yaml
kubectl apply -f k8s/pvc.yaml
kubectl apply -f k8s/backend.yaml
kubectl apply -f k8s/frontend.yaml
kubectl apply -f k8s/svc.yamlthat's it!
Accessing KubeMate
After deployment, you can access KubeMate through the Kubernetes service. To get the external IP or URL:
kubectl get svc KubeMate-frontend
# For LoadBalancer type
kubectl get svc KubeMate-frontend
# For NodePort type
kubectl get nodes -o wideConfiguration Details
To make things even easier, both Helm charts and Kubernetes manifests include sensible defaults for production use. Persistent volumes are configured for database storage, services are set up for proper networking, and health checks ensure high availability.
So you don't need to do anything more to start exploring your clusters right now, however take your time reading the information below to get a deeper understanding about how these concepts work.