Bird
Raised Fist0
Dockerdevops~20 mins

Image naming conventions (registry/image:tag) in Docker - Practice Problems & Coding Challenges

Choose your learning style10 modes available
Challenge - 5 Problems
🎖️
Docker Image Naming Master
Get all challenges correct to earn this badge!
Test your skills under time pressure!
🧠 Conceptual
intermediate
1:30remaining
Understanding Docker image naming format
Which part of the Docker image name registry.example.com/myapp/backend:1.2.3 specifies the version of the image?
A1.2.3
Bmyapp/backend
Cmyapp
Dregistry.example.com
Attempts:
2 left
💡 Hint
The version is usually indicated after a colon at the end.
💻 Command Output
intermediate
2:00remaining
Output of docker pull with full image name
What will be the output status when running docker pull registry.example.com/myapp/frontend:latest if the image exists in the registry?
AError: image not found
B
latest: Pulling from myapp/frontend
Digest: sha256:abc123...
Status: Downloaded newer image for registry.example.com/myapp/frontend:latest
CStatus: Image is up to date for registry.example.com/myapp/frontend:latest
DPermission denied
Attempts:
2 left
💡 Hint
Pulling an image shows download progress and digest.
❓ Configuration
advanced
2:00remaining
Correct image name for private registry
Which of the following is the correct Docker image name to push an image to a private registry at myregistry.local:5000 with repository project/api and tag v5?
Aproject/api:v5
Bmyregistry.local/project/api:v5
Cmyregistry.local:5000/project/api:v5
Dmyregistry.local:project/api:v5
Attempts:
2 left
💡 Hint
Private registries often include port numbers after a colon.
❓ Troubleshoot
advanced
1:30remaining
Error caused by invalid image tag format
What error will Docker show if you try to tag an image with an invalid tag containing uppercase letters, like myapp/backend:VersionOne?
AError response from daemon: invalid reference format
BTag created successfully
CError: tag contains invalid characters
DWarning: tag converted to lowercase
Attempts:
2 left
💡 Hint
Docker tags must be lowercase and follow specific rules.
✅ Best Practice
expert
2:30remaining
Choosing the best tag for continuous deployment
In a continuous deployment pipeline, which tag naming strategy is best to ensure traceability and avoid overwriting images unintentionally?
AUse the 'latest' tag for every build
BUse random strings as tags for each build
CUse timestamps as tags like '20240615-1530'
DUse semantic versioning tags like 'v1.2.3' for each build
Attempts:
2 left
💡 Hint
Tags should help identify the exact version deployed.

Practice

(1/5)
1. Which part of the Docker image name docker.io/library/nginx:latest specifies the version of the image?
easy
A. latest
B. docker.io
C. nginx
D. library

Solution

  1. Step 1: Identify the tag in the image name

    The tag is the part after the colon (:), which specifies the version or variant of the image.
  2. Step 2: Locate the tag in the example

    In docker.io/library/nginx:latest, the tag is latest.
  3. Final Answer:

    latest -> Option A
  4. Quick Check:

    Tag = latest [OK]
Hint: Tag is always after colon ':' in image name [OK]
Common Mistakes:
  • Confusing registry with tag
  • Thinking image name is the tag
  • Ignoring the colon separator
2. Which of the following is the correct syntax for a Docker image name with a registry, image, and tag?
easy
A. tag/image:registry
B. registry/image:tag
C. image:tag/registry
D. image/registry:tag

Solution

  1. Step 1: Recall the Docker image naming format

    The correct format is registry/image:tag, where registry is optional but comes first, then image name, then tag after colon.
  2. Step 2: Match the options to the format

    Only registry/image:tag matches the correct order and separators.
  3. Final Answer:

    registry/image:tag -> Option B
  4. Quick Check:

    Format = registry/image:tag [OK]
Hint: Registry first, then image, then tag after ':' [OK]
Common Mistakes:
  • Placing tag before image
  • Swapping registry and image order
  • Using wrong separators like '/' for tag
3. What is the full image name including registry and tag for the official Redis image version 7.0 from Docker Hub?
medium
A. docker.io/redis7:0
B. redis:7.0
C. redis/docker.io:7.0
D. docker.io/redis:7.0

Solution

  1. Step 1: Understand Docker Hub default registry

    Docker Hub's registry is docker.io. The official images are under this registry.
  2. Step 2: Compose full image name

    The full name includes registry, image name, and tag: docker.io/redis:7.0.
  3. Final Answer:

    docker.io/redis:7.0 -> Option D
  4. Quick Check:

    Full name = docker.io/redis:7.0 [OK]
Hint: Full name = registry/image:tag, Docker Hub registry is docker.io [OK]
Common Mistakes:
  • Putting registry after image
  • Missing registry for full name
  • Incorrect tag format
4. You try to pull the image myregistry.com/myapp but get an error. Which of these is a likely cause?
medium
A. Missing tag defaults to 'latest', but image may not have it
B. Registry name cannot contain dots '.'
C. Image name must always include a tag
D. Registry must be 'docker.io' only

Solution

  1. Step 1: Understand default tag behavior

    If no tag is given, Docker uses latest by default. If the image does not have a 'latest' tag, pull fails.
  2. Step 2: Check other options for errors

    Registry names can contain dots, tags are optional, and registries can be other than docker.io.
  3. Final Answer:

    Missing tag defaults to 'latest', but image may not have it -> Option A
  4. Quick Check:

    Default tag 'latest' may be missing [OK]
Hint: No tag means 'latest' assumed, may cause pull failure [OK]
Common Mistakes:
  • Thinking registry can't have dots
  • Believing tag is mandatory
  • Assuming only docker.io registry works
5. You want to tag a local image myapp to push it to a private registry at registry.example.com with version v2. Which command correctly tags the image?
hard
A. docker tag myapp:v2 registry.example.com/myapp
B. docker tag registry.example.com/myapp:v2 myapp
C. docker tag myapp registry.example.com/myapp:v2
D. docker tag myapp registry.example.com:v2/myapp

Solution

  1. Step 1: Understand docker tag syntax

    The syntax is docker tag SOURCE_IMAGE[:TAG] TARGET_IMAGE[:TAG].
  2. Step 2: Apply to given names

    Source is myapp (local), target is registry.example.com/myapp:v2 to specify registry and tag.
  3. Final Answer:

    docker tag myapp registry.example.com/myapp:v2 -> Option C
  4. Quick Check:

    Tag command: source then target with registry and tag [OK]
Hint: Tag command: source image then target with registry:tag [OK]
Common Mistakes:
  • Swapping source and target images
  • Placing tag in wrong position
  • Using invalid registry/tag format
Recommended

Ready to prove it?

Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

10 questions~5 mineasy hard