5.0 KiB
5.0 KiB
🧹 Cleanup Guide for Kind + Colima + Skaffold Environment
This guide provides different cleanup options depending on what you want to clean up.
📋 Quick Reference
| Scenario | Command | What it cleans |
|---|---|---|
| Stop development | Ctrl+C (in skaffold dev) |
Stops Skaffold, keeps everything |
| Clean deployment only | skaffold delete |
Removes K8s resources, keeps images |
| Clean HTTPS setup | ./cleanup-https.sh |
Removes HTTPS + cert-manager |
| Complete cleanup | ./complete-cleanup.sh |
Everything (interactive) |
| Nuclear option | See manual commands below | Complete manual cleanup |
🚀 Quick Cleanup Commands
1. Stop Skaffold Development Mode
# If running skaffold dev, just press:
Ctrl+C
# Or from another terminal:
skaffold delete --profile=dev
2. Clean Only Kubernetes Resources
# Remove all bakery-ia resources
kubectl delete namespace bakery-ia
# Remove cert-manager (if installed)
kubectl delete -f https://github.com/cert-manager/cert-manager/releases/download/v1.13.2/cert-manager.yaml
# Remove NGINX Ingress
kubectl delete -f https://kind.sigs.k8s.io/examples/ingress/deploy-ingress-nginx.yaml
3. Clean Docker Images
# Remove bakery images
docker images | grep "bakery/" | awk '{print $1":"$2}' | xargs docker rmi -f
# Remove dangling images
docker image prune -f
# Remove build cache
docker builder prune -f
4. Clean Kind Cluster
# Delete specific cluster
kind delete cluster --name bakery-ia-local
# Delete all clusters
kind get clusters | xargs -r -I {} kind delete cluster --name {}
5. Clean Colima
# Stop Colima
colima stop --profile k8s-local
# Delete Colima profile (removes all Docker data)
colima delete --profile k8s-local --force
🔄 Automated Cleanup Scripts
Option 1: Complete Cleanup (Recommended)
# Interactive cleanup of everything
./complete-cleanup.sh
Option 2: HTTPS-Only Cleanup
# Removes HTTPS setup but keeps basic environment
./cleanup-https.sh
Option 3: Skaffold-Only Cleanup
# Quick cleanup of just the deployment
skaffold delete --profile=dev
🛠️ Manual Nuclear Cleanup
If scripts fail, use these manual commands:
# 1. Stop all processes
pkill -f skaffold
pkill -f kubectl
# 2. Clean Kubernetes
kubectl delete namespace bakery-ia --force --grace-period=0 2>/dev/null || true
kubectl delete -f https://github.com/cert-manager/cert-manager/releases/download/v1.13.2/cert-manager.yaml --ignore-not-found=true
kubectl delete -f https://kind.sigs.k8s.io/examples/ingress/deploy-ingress-nginx.yaml --ignore-not-found=true
# 3. Clean Docker aggressively
docker stop $(docker ps -aq) 2>/dev/null || true
docker rm $(docker ps -aq) 2>/dev/null || true
docker rmi $(docker images -q) -f 2>/dev/null || true
docker system prune -a -f --volumes
# 4. Clean Kind completely
kind get clusters | xargs -r -I {} kind delete cluster --name {}
# 5. Reset Colima completely
colima stop --profile k8s-local 2>/dev/null || true
colima delete --profile k8s-local --force 2>/dev/null || true
rm -rf ~/.colima/k8s-local
# 6. Clean local files
rm -f *.crt *.key bakery-ia-ca.crt
rm -rf ~/.skaffold/cache
# 7. Clean hosts file (careful!)
sudo cp /etc/hosts /etc/hosts.backup
sudo sed -i '' '/bakery-ia.local/d' /etc/hosts
sudo sed -i '' '/api.bakery-ia.local/d' /etc/hosts
sudo sed -i '' '/monitoring.bakery-ia.local/d' /etc/hosts
🎯 Cleanup by Use Case
Daily Development
# Quick reset between sessions
skaffold delete --profile=dev
Weekly Cleanup
# Clean up accumulated images and cache
docker image prune -f
docker builder prune -f
Project Finished
# Complete cleanup
./complete-cleanup.sh
Something's Broken
# Nuclear reset
kind delete cluster --name bakery-ia-local
colima delete --profile k8s-local --force
# Then restart with ./skaffold-dev.sh
🔍 Verify Cleanup
After cleanup, verify with these commands:
# Check Docker images
docker images | grep bakery
# Check Kind clusters
kind get clusters
# Check Colima status
colima status --profile k8s-local
# Check Kubernetes (should fail if cluster deleted)
kubectl get pods -n bakery-ia
# Check hosts file
grep bakery /etc/hosts
🚀 Restart After Cleanup
To restart development after cleanup:
# Quick start
./skaffold-dev.sh
# Or with HTTPS
./setup-https.sh
# Or manual
colima start --cpu 4 --memory 8 --disk 50 --runtime docker --profile k8s-local
kind create cluster --name bakery-ia-local
skaffold dev --profile=dev
⚠️ Important Notes
- Always backup important data before cleanup
- The complete cleanup script is interactive - it will ask before destructive operations
- Colima profile deletion removes ALL Docker data in that profile
- Kind cluster deletion is permanent - you'll lose all Kubernetes data
- Hosts file changes require sudo permissions
Choose the cleanup level that matches your needs! 🎯