Kubernetes Workloads: Pods
Build a Pod from scratch, exec into it, try to edit an immutable field, explore all three restart policies, and observe graceful termination.
Focused hands-on problems designed to help you hone your DevOps or Server Side skills. Some challenges are more educational, while others are based on real-world scenarios. The platform provides hints and feedback for each challenge, including automated solution checks.
Build a Pod from scratch, exec into it, try to edit an immutable field, explore all three restart policies, and observe graceful termination.
Create a Pod that uses a postStart lifecycle hook to write a custom message to the nginx welcome page, expose it via a NodePort Service, and verify the hook ran successfully.
A Pod is running nginx and exposed via NodePort. Copy a local HTML file into the running Pod so NGINX serves it as the default homepage using only imperative commands.
Create a Pod that does not mount the default ServiceAccount token, preventing it from accessing the Kubernetes API server.
Create a LimitRange in a namespace to enforce minimum, maximum, and default resource constraints for containers, then deploy a compliant Pod.
Create a static pod named mcp-grafana on node-01 and delete an existing pod from the cluster.
Create a ServiceAccount with permissions to access only that specific Secret using RBAC resourceNames restriction.
Convert an existing Pod manifest into a Deployment and move the hardcoded environment variables into a Kubernetes Secret.
Create a Pod with ConfigMap volume mount, expose it via ClusterIP Service, and test connectivity from another namespace. This combines multiple Kubernetes concepts.
Create a multi-container Pod with different user IDs per container while sharing a common group ID at the Pod level for collaborative file access.