Courseiva

CKAD Application Design and Build Practice Question

Which of the following is the correct way to create a simple Pod named 'nginx' running the nginx:1.25 image using kubectl?

⚠ Common exam trap

A common mix-up: candidates confuse `kubectl run` (which creates a Pod or Deployment) with `kubectl create` (which requires a resource type and is often used with files), leading them to incorrectly assume `kubectl create pod` is valid syntax.

Answer choices

Why each option matters

Answer the question above first, then reveal the full breakdown to understand why each option is right or wrong.

Correct answer & explanation

✓

kubectl run nginx --image=nginx:1.25

`kubectl run nginx --image=nginx:1.25` is the imperative command to create a Pod directly without a Deployment. The `run` subcommand is specifically designed to create a Pod (or other resources like Deployments) from an image, and when no resource type is specified, it defaults to creating a Pod. This is the standard CKAD approach for quickly launching a standalone Pod.

Answer analysis

Option-by-option breakdown

For each option: why learners choose it and why it is or isn't the right answer here.

  • ✗

    kubectl create nginx --image=nginx:1.25

    Why it's wrong here

    The 'kubectl create' command is not a generic command that infers a resource type from an --image flag; it requires an explicit resource type (e.g., deployment, configmap) or a file containing a resource manifest. Since no resource type is specified, kubectl does not know what object to create, and this invocation is syntactically invalid.

  • ✗

    kubectl create pod nginx --image=nginx:1.25

    Why it's wrong here

    While 'kubectl create' is a valid command, 'pod' is not one of its supported subcommands. The imperative way to create a standalone Pod directly is 'kubectl run', not 'kubectl create pod'. Attempting to use 'kubectl create pod' results in an error because the kubectl CLI has no 'pod' subcommand under 'create'.

  • ✗

    kubectl apply nginx --image=nginx:1.25

    Why it's wrong here

    The 'kubectl apply' command is designed for declarative configuration management: it applies changes to resources from a YAML/JSON file or stdin, typically supplied via the '-f' flag. It does not accept an '--image' flag directly, and without a file argument, 'kubectl apply' cannot function. This invocation is missing the required resource definition.

  • ✓

    kubectl run nginx --image=nginx:1.25

    Why this is correct

    The correct command is 'kubectl run nginx --image=nginx:1.25'. This is the standard imperative command for creating a single Pod: it generates a Pod object named 'nginx' with the specified container image and submits it to the cluster. 'kubectl run' is specifically designed for this purpose, whereas 'kubectl create' and 'kubectl apply' have different roles.

About these practice questions

One of 826 original CKAD practice questions on Courseiva, each with a full explanation and wrong-answer analysis — not exam dumps or protected exam content. Learn why practice questions differ from exam dumps →

How Courseiva writes practice questions · Editorial policy

JA

Written by Johnson Ajibi, MSc IT Security

Senior Network & Security Engineer · founder of Courseiva

This CKAD practice question is part of Courseiva's free CNCF certification practice question bank. Courseiva provides original exam-style practice questions with explanations, topic-based practice, mock exams, readiness tracking, and study analytics to help learners prepare for the CKAD exam.