📖 Scenario: You are working with Docker images and need to understand how to name them properly. Docker images use a naming format that helps you identify where the image is stored, what the image is, and which version it is.
🎯 Goal: Learn how to create and use Docker image names with the correct format: registry/image:tag. You will build a simple example of naming an image with a registry, image name, and tag.
📋 What You'll Learn
Create a variable with a Docker image name using the format registry/image:tag
Add a variable for the default registry
Extract the image name and tag from the full image name
Print the extracted image name and tag
💡 Why This Matters
🌍 Real World
Docker images are used to package applications and their environments. Knowing how to name and tag images helps you manage versions and sources clearly.
💼 Career
Understanding image naming conventions is essential for DevOps roles that involve container management, deployment pipelines, and working with container registries.
Progress0 / 4 steps
1
Create a Docker image name variable
Create a variable called full_image_name and set it to the string docker.io/library/ubuntu:22.04.
Docker
Hint
Remember to use quotes around the string value.
2
Add a default registry variable
Create a variable called default_registry and set it to the string docker.io.
Docker
Hint
This variable will help identify the registry part of the image name.
3
Extract image name and tag from full image name
Use the split method on full_image_name to create two variables: image_name for the part after the registry and before the colon, and tag for the part after the colon. For example, image_name should be library/ubuntu and tag should be 22.04.
Docker
Hint
First split by '/' to remove the registry, then split by ':' to separate the tag.
4
Print the extracted image name and tag
Write two print statements to display the values of image_name and tag.
Docker
Hint
Use print(image_name) and print(tag) to show the results.
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
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.
Step 2: Locate the tag in the example
In docker.io/library/nginx:latest, the tag is latest.
Final Answer:
latest -> Option A
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
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.
Step 2: Match the options to the format
Only registry/image:tag matches the correct order and separators.
Final Answer:
registry/image:tag -> Option B
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
Step 1: Understand Docker Hub default registry
Docker Hub's registry is docker.io. The official images are under this registry.
Step 2: Compose full image name
The full name includes registry, image name, and tag: docker.io/redis:7.0.
Final Answer:
docker.io/redis:7.0 -> Option D
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
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.
Step 2: Check other options for errors
Registry names can contain dots, tags are optional, and registries can be other than docker.io.
Final Answer:
Missing tag defaults to 'latest', but image may not have it -> Option A
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
Step 1: Understand docker tag syntax
The syntax is docker tag SOURCE_IMAGE[:TAG] TARGET_IMAGE[:TAG].
Step 2: Apply to given names
Source is myapp (local), target is registry.example.com/myapp:v2 to specify registry and tag.
Final Answer:
docker tag myapp registry.example.com/myapp:v2 -> Option C
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 unknownstrongwhile earning +1 Grip toward your certificate.