Skip to content

𝘈 𝘬𝘢𝘣𝘦𝘳𝘯𝘦𝘡𝘦𝘴 π˜₯𝘒𝘴𝘩𝘣𝘰𝘒𝘳π˜₯ π˜ͺ𝘯𝘡𝘦𝘨𝘳𝘒𝘡𝘦π˜₯ 𝘸π˜ͺ𝘡𝘩 𝘩𝘦𝘒𝘭𝘡𝘩 𝘀𝘩𝘦𝘀𝘬𝘴, 𝘡𝘳π˜ͺ𝘷𝘺 𝘴𝘀𝘒𝘯𝘯π˜ͺ𝘯𝘨 𝘒𝘯π˜₯ 𝘩𝘦𝘒𝘭𝘡𝘩 𝘀𝘩𝘦𝘀𝘬𝘴 𝘧𝘰𝘳 𝘱𝘰π˜₯𝘴

Notifications You must be signed in to change notification settings

NotHarshhaa/kubernetes-dashboard

Repository files navigation

Kubernetes Dashboard

GitHub stars GitHub forks Docker Pulls Docker Stars License

A modern, responsive Kubernetes dashboard built with Next.js and shadcn/ui. Monitor and manage your Kubernetes clusters with a beautiful, intuitive interface.

🐳 Docker Hub

Docker Hub

Quick Start

# Pull and run the dashboard
docker run -p 3000:3000 harshhaareddy/kubernetes-dashboard:latest

# Access at http://localhost:3000

πŸš€ Usage

Option 1: Docker (Recommended)

# Pull and run with Docker Hub image
docker run -p 3000:3000 harshhaareddy/kubernetes-dashboard:latest

# Or with Docker Compose
docker-compose up -d

Option 2: Kubernetes

# Deploy to Kubernetes cluster
kubectl apply -f k8s/

# Access via NodePort: http://<node-ip>:30007

Option 3: Local Development

# Install dependencies
npm install

# Start development server
npm run dev

# Access at http://localhost:3000

🌟 Features

  • Cluster Overview: Real-time cluster metrics and health status
  • Pod Management: View and monitor pods across all namespaces
  • Service Management: Monitor services and configurations
  • Node Monitoring: Track node health and resource utilization
  • Deployment Management: Monitor deployment status and replicas
  • Real-time Monitoring: CPU, memory, and network usage charts
  • Modern UI: Beautiful animations with Framer Motion
  • Responsive Design: Works on desktop and mobile devices

πŸ“Έ Gallery

Check out our Dashboard Gallery to see screenshots of all dashboard sections including monitoring, nodes, deployments, services, and more!

πŸ“„ Pages

  • / - Cluster overview with key metrics
  • /pods - Pod management and monitoring
  • /services - Service configuration and status
  • /nodes - Node health and resource usage
  • /deployments - Deployment status and management
  • /monitoring - Real-time metrics and charts

οΏ½ Prerequisites

  • Node.js 18+ (for local development)
  • Docker (for container deployment)
  • Access to a Kubernetes cluster
  • kubectl configured (for cluster connection)

🐳 Docker Image

Image: harshhaareddy/kubernetes-dashboard:latest

Docker Hub: harshhaareddy/kubernetes-dashboard

Commands:

# Pull image
docker pull harshhaareddy/kubernetes-dashboard:latest

# Run container
docker run -p 3000:3000 harshhaareddy/kubernetes-dashboard:latest

πŸ”’ Security

  • The dashboard connects to your Kubernetes cluster using your kubectl configuration
  • Ensure your kubeconfig has appropriate read-only permissions
  • For production, consider using service accounts with limited permissions
  • Enable RBAC to restrict access to sensitive cluster resources

πŸ› Troubleshooting

Common Issues

"Connection refused" error

  • Check if Kubernetes cluster is running
  • Verify kubectl configuration
  • Ensure cluster is accessible from your network

"Permission denied" error

  • Check RBAC permissions
  • Verify service account has necessary roles

Docker build fails

  • Ensure Docker is running
  • Check available disk space

Debug Commands

# Check cluster status
kubectl cluster-info

# Check dashboard pods
kubectl get pods -l app=kubernetes-dashboard

# View pod logs
kubectl logs -l app=kubernetes-dashboard

# Port forward for debugging
kubectl port-forward service/kubernetes-dashboard-service 3000:80

πŸ“š Tech Stack

  • Frontend: Next.js 16 with TypeScript
  • UI Components: shadcn/ui with Tailwind CSS
  • Icons: Lucide React
  • Charts: Recharts
  • Animations: Framer Motion
  • Kubernetes: @kubernetes/client-node

🀝 Contributing

  1. Fork the repository
  2. Create a feature branch
  3. Make your changes
  4. Run npm run lint and npm run type-check
  5. Submit a pull request

πŸ“„ License

This project is licensed under the MIT License.

About

𝘈 𝘬𝘢𝘣𝘦𝘳𝘯𝘦𝘡𝘦𝘴 π˜₯𝘒𝘴𝘩𝘣𝘰𝘒𝘳π˜₯ π˜ͺ𝘯𝘡𝘦𝘨𝘳𝘒𝘡𝘦π˜₯ 𝘸π˜ͺ𝘡𝘩 𝘩𝘦𝘒𝘭𝘡𝘩 𝘀𝘩𝘦𝘀𝘬𝘴, 𝘡𝘳π˜ͺ𝘷𝘺 𝘴𝘀𝘒𝘯𝘯π˜ͺ𝘯𝘨 𝘒𝘯π˜₯ 𝘩𝘦𝘒𝘭𝘡𝘩 𝘀𝘩𝘦𝘀𝘬𝘴 𝘧𝘰𝘳 𝘱𝘰π˜₯𝘴

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages