Skip to content

Nazihbenbrahim/kubejutsu

Repository files navigation

☸️ kubejutsu

kubejutsu banner

Train like a shinobi. Build like an engineer.

Hands-on Kubernetes labs with a disciplined, mission-based workflow: manifests, debugging, networking, storage, security, Helm, scheduling, observability, and real-world troubleshooting.

Kubernetes GitHub last commit GitHub repo size Maintained


Why this repository exists

kubejutsu is a public Kubernetes lab repository built to document real practice, not just collect YAML.

The core idea is simple:

  • write manifests by hand
  • solve the task yourself first
  • verify everything with kubectl
  • keep the exact commands you used
  • document what failed, what changed, and what you learned
  • keep each lab in its own folder

This gives the repository two strengths:

  • it stays useful as a public portfolio
  • it stays useful as a real training archive

The visual identity can be shinobi-inspired, but the technical content stays practical, clean, and production-minded.

Mission format

Each lab usually contains:

  • task.md
  • solution.yaml
  • commands.sh
  • notes.md

Workflow philosophy

  • Write manifests by hand
  • Try solving the lab before looking at any solution
  • Verify everything with kubectl
  • Keep the exact commands you used
  • Document mistakes, fixes, and lessons learned
  • Commit each lab separately

Commit convention

Examples:

  • feat(pods): lab-001 pod basics
  • feat(deployments): lab-014 blue-green
  • fix(networkpolicy): correct ingress rule
  • docs(storage): improve notes for pvc binding

Topic index

Topic Folder
Pods 01-pods
Deployments 02-deployments
ConfigMaps + Secrets 03-configmaps-secrets
Storage 04-storage
Services + Ingress 05-services-ingress
NetworkPolicy 06-networkpolicy
RBAC + Security 07-rbac-security
HPA + KEDA + Autoscaling 08-hpa-keda-autoscaling
Helm 09-helm
Scheduling 10-scheduling
Observability 11-observability
Jobs + CronJobs 12-jobs-cronjobs
Debugging 13-debugging
Real-World Apps 14-realworld-apps
CKA Sprint 15-cka-sprint

Lab index

Lab titles keep the original wording and source attribution.
Folder names stay short, stable, and GitHub-friendly.

01 — Pods

Folder: 01-pods

02 — Deployments

Folder: 02-deployments

03 — ConfigMaps + Secrets

Folder: 03-configmaps-secrets

04 — Storage

Folder: 04-storage

05 — Services + Ingress

Folder: 05-services-ingress

06 — NetworkPolicy

Folder: 06-networkpolicy

07 — RBAC + Security

Folder: 07-rbac-security

08 — HPA + KEDA + Autoscaling

Folder: 08-hpa-keda-autoscaling

09 — Helm

Folder: 09-helm

10 — Scheduling

Folder: 10-scheduling

10 — Jobs + CronJobs

Folder: 12-jobs-cronjobs

11 — Observability

Folder: 11-observability

12 — Debugging

Folder: 13-debugging

13 — Real-World Apps

Folder: 14-realworld-apps

14 — CKA Sprint

Folder: 15-cka-sprint


How each lab folder is expected to look

lab-xxx-name/
├── task.md
├── solution.yaml
├── commands.sh
└── notes.md

How to work through a lab

  1. Read the task carefully
  2. Solve it manually first
  3. Verify it with kubectl
  4. Save the final manifest
  5. Save the exact commands used
  6. Write short notes about what worked, what failed, and what was fixed
  7. Commit the lab

Playgrounds

Other

Notes

  • Display names preserve the original lab wording and source names.
  • Folder names are normalized for readability and consistency.
  • This repository can grow lab by lab without needing to rewrite the main structure.

Roadmap

See ROADMAP.md


About

Hands-on Kubernetes labs covering YAML, debugging, networking, security, storage, Helm, and real-world practice

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors