Discover

Tutorials, challenges, courses, skill paths, playgrounds, and more — search the whole library in one place.

See all tutorials →
Challenge

Use a Kubernetes Job to Test NATS Pub/Sub

A payment service subscribes to payment requests through NATS. Run the checkout team's test script as a Job in the checkout namespace, with the required settings, and make sure the payment request arrives.

Challenge

Fix a Deployment Stuck in ImagePullBackOff

A freshly rolled out Deployment has its Pods stuck in ImagePullBackOff, and the catalog page it serves returns 503. Read what the cluster reports about the failed pulls, find out why the image does not pull, and get the Pods running.

See all challenges →
Course

Kubernetes the (Very) Hard Way

A hands-on, step-by-step guide to assembling a Kubernetes cluster from the ground up, (without using any automation) while deeply exploring each component's role and functionality along the way.

Kubernetes the (Very) Hard Way (cover image)
Course

Software Bill of Behavior - vendor supplied runtime profile for tampering and anomaly detection

We ♥️ supply chain security, thus was created SBOM - the Bill of Materials- but, we also need SBOB -the Bill of Behavior - This livelab proposes to standardize how to record a benign behavior profile, extract, sign and publish it, for users to consume, ingest, verify it and detect attacks and tampering. For software-vendors, a SBOB creates trust and transparency, For users, it makes anomaly detection realistically achievable.

Software Bill of Behavior - vendor supplied runtime profile for tampering and anomaly detection (cover image)
See all courses →
Skill Path

Get Started with Linux Control Groups (cgroup v2)

Start by learning how to limit process resources in Linux using cgroups—from the most basic, hands-on cgroupfs manipulation to the more convenient systemd-run command. Then, explore how Docker and Kubernetes leverage cgroups to control the resource usage of containers and pods.

Skill Path

Kubernetes Workload Types

Six hands-on challenges covering every Kubernetes workload resource. Build Pods, ReplicaSets, Deployments, DaemonSets, StatefulSets, Jobs, and CronJobs by hand and understand the ownership chains that connect them.

Skill Path

Kubernetes Storage: From Ephemeral to Persistent

Four hands-on challenges covering the full storage stack. Start with emptyDir, move to dynamic provisioning with StorageClass, explore static PV binding patterns including label selectors, bidirectional claimRef, and topology-aware local volumes, then finish with PV reclaim policies and data recovery.

See all skill paths →
See all shell gyms →
Playground on  Kubernetes

Kubernetes Cluster

A multi-node Kubernetes cluster provisioned with kubeadm, allowing you to choose your preferred container runtime and networking plugin. Perfect for CKA, CKAD, and CKS preparation.

Playground on  Kubernetes

Kubernetes Cluster (K3s)

A multi-node K3s cluster with a load balancer, Helm, and more.

Playground on  Kubernetes, Programming

Kubernetes Client (Go)

A collection of mini-programs demonstrating Kubernetes client-go usage and a loaded IDE. Handy if you need to write a controller or two.

Playground on  Kubernetes

Lightweight Kubernetes Cluster (K0s)

A single-node K0s cluster.

See all playgrounds →