CKAD v1.35 · Application Design and Build (20%) → "Define, build and modify container images" Target time: 20 minutes
The browser lab provides Docker, kind, kubectl, jq, and registry access.
Use the disposable muscle cluster only. Run commands from k8s-muscle/.
Setup copies a tiny Go HTTP server into this scenario's workspace/ directory.
Do not modify starter/ or the copied main.go.
workspace/Dockerfile using a build stage named build and a separate
Alpine runtime stage (keep its sh and id tools for inspection). Compile a static Linux binary at /app/server in the final
image. The final image must contain neither Go nor /src/main.go.k8sm-image-lab:v1.muscle cluster. Do not push to a registry.image-build, create Deployment hello, two replicas, using
that image with imagePullPolicy: Never. Both replicas must become ready.hello, port 80 to container port 8080. Requests from
inside the cluster must return image-build-ok.MESSAGE=release-two.
After rollout, the same Service must return release-two.The grader checks the final release-two state, image user, absence of build artifacts, and live traffic. It cannot prove your exact command history. Reset deletes this namespace and workspace and removes this lab's local image tag; the next attempt must rebuild and reload the image.