Challenges

Focused, hands-on DevOps and server-side problems with hints, feedback, and automated solution checks.

Challenge

Debug a Go Container Image That Fails to Start After a Recent Change

A Go service that has always been shipped as a static binary in a scratch-y image suddenly fails to start in a container, while the local build works as before. Find what recent changes caused it and fix the image without reverting them.

Challenge

Debug a Failing Kubernetes Job

A Job manifest at /home/laborant/batch-job.yaml is exiting with a non-zero exit status. The Job has limited retries configured. Inspect the cluster and the manifest to find the bug, fix it, and reapply.

Challenge

Inject a Config File Without Overwriting the Image's Existing Directory

A webapp deployment in the prod namespace is stuck in CrashLoopBackOff. The application's startup probe checks that its existing config directory is intact before the container is marked healthy. Fix the deployment so configuration is injected correctly and the pod reaches Running state with its health check endpoint responding on port 8080.

Challenge

Resolve ContainerCreating Issue Caused by Missing ConfigMap

A Deployment is stuck with Pods in ContainerCreating state because the required ConfigMap was not created. Fix the issue to make the application accessible.

Challenge

Run a Sidecar Container in the Namespace of Another Container

Learn how to run multiple Docker containers sharing the same PID, IPC, and network namespaces - a foundation of many advanced container use cases, including Kubernetes Pods construction and container debugging tools.