Bird
Raised Fist0
Kubernetesdevops~20 mins

Creating ConfigMaps from files in Kubernetes - Practice Exercises

Choose your learning style10 modes available
Challenge - 5 Problems
🎖️
ConfigMap Mastery
Get all challenges correct to earn this badge!
Test your skills under time pressure!
💻 Command Output
intermediate
2:00remaining
Output of creating ConfigMap from multiple files
What is the output of the following command when run in a directory containing app.properties and db.properties files?
Kubernetes
kubectl create configmap app-config --from-file=app.properties --from-file=db.properties
Aerror: invalid syntax
Berror: file not found
Cconfigmap/app-config unchanged
Dconfigmap/app-config created
Attempts:
2 left
💡 Hint
The command creates a ConfigMap named 'app-config' from the specified files if they exist.
❓ Configuration
intermediate
2:00remaining
Correct syntax to create ConfigMap from directory
Which command correctly creates a ConfigMap named my-config from all files in the directory config-dir/?
Akubectl create configmap my-config --from-directory=config-dir/
Bkubectl create configmap my-config --from-file=config-dir/*
Ckubectl create configmap my-config --from-dir=config-dir/
Dkubectl create configmap my-config --from-file=config-dir/
Attempts:
2 left
💡 Hint
Use the correct flag to include all files in a directory.
❓ Troubleshoot
advanced
2:00remaining
Error when creating ConfigMap from non-existent file
What error will occur when running this command if missing.conf does not exist?
Kubernetes
kubectl create configmap missing-config --from-file=missing.conf
Aerror: the path "missing.conf" does not exist
Bconfigmap/missing-config created with empty data
Cerror: invalid ConfigMap name
Dconfigmap/missing-config created with default data
Attempts:
2 left
💡 Hint
Check if the file path exists before creating a ConfigMap from it.
🔀 Workflow
advanced
2:00remaining
Steps to update ConfigMap from updated files
You have updated files in config-updates/. Which sequence of commands correctly updates the existing ConfigMap app-config with these files?
A1,2
B2,1
C4,3
D4,1,2
Attempts:
2 left
💡 Hint
Use dry-run to generate YAML and then apply it to update without deleting.
✅ Best Practice
expert
3:00remaining
Best practice for managing ConfigMaps from multiple files in CI/CD
In a CI/CD pipeline, what is the best practice to manage ConfigMaps created from multiple configuration files to ensure consistency and traceability?
AManually edit ConfigMaps in the cluster after deployment to fix any issues
BGenerate ConfigMap YAML manifests from files using dry-run and store them in version control, then apply in pipeline
CCreate ConfigMaps directly in the cluster using kubectl create commands in the pipeline without storing manifests
DUse kubectl patch to update ConfigMaps with inline JSON patches in the pipeline
Attempts:
2 left
💡 Hint
Think about how to keep track of changes and have reproducible deployments.

Practice

(1/5)
1. What is the main purpose of creating a ConfigMap from a file in Kubernetes?
easy
A. To deploy a new pod automatically
B. To create a new container image
C. To monitor resource usage of pods
D. To store configuration data separately from application code

Solution

  1. Step 1: Understand ConfigMap role

    ConfigMaps hold configuration data separately from app code to keep apps flexible.
  2. Step 2: Recognize file usage

    Creating ConfigMaps from files allows easy management of config data outside the container image.
  3. Final Answer:

    To store configuration data separately from application code -> Option D
  4. Quick Check:

    ConfigMap purpose = separate config storage [OK]
Hint: ConfigMaps separate config from code for flexibility [OK]
Common Mistakes:
  • Confusing ConfigMaps with container images
  • Thinking ConfigMaps deploy pods
  • Assuming ConfigMaps monitor resources
2. Which of the following is the correct command to create a ConfigMap named app-config from a file called settings.conf?
easy
A. kubectl create configmap app-config --from-file=settings.conf
B. kubectl create configmap --name=app-config settings.conf
C. kubectl configmap create app-config settings.conf
D. kubectl create configmap app-config -f settings.conf

Solution

  1. Step 1: Recall correct syntax for creating ConfigMap from file

    The correct syntax is kubectl create configmap [name] --from-file=[filename].
  2. Step 2: Match command with syntax

    kubectl create configmap app-config --from-file=settings.conf matches the syntax exactly: kubectl create configmap app-config --from-file=settings.conf.
  3. Final Answer:

    kubectl create configmap app-config --from-file=settings.conf -> Option A
  4. Quick Check:

    Correct syntax uses --from-file=filename [OK]
Hint: Use --from-file=filename after configmap name [OK]
Common Mistakes:
  • Using -f instead of --from-file
  • Placing filename without --from-file flag
  • Wrong command order or flags
3. Given the command kubectl create configmap my-config --from-file=app.properties, what will be the key name inside the ConfigMap if the file is named app.properties?
medium
A. app
B. my-config
C. app.properties
D. configmap

Solution

  1. Step 1: Understand key naming in ConfigMaps from files

    When creating a ConfigMap from a file without specifying a key, the filename is used as the key.
  2. Step 2: Apply to given filename

    Since the file is named app.properties, the key inside the ConfigMap will be app.properties.
  3. Final Answer:

    app.properties -> Option C
  4. Quick Check:

    Filename = key name in ConfigMap [OK]
Hint: Filename becomes key if no key specified [OK]
Common Mistakes:
  • Assuming ConfigMap name is the key
  • Using partial filename as key
  • Confusing key with ConfigMap name
4. You run kubectl create configmap test-config --from-file=config.txt but get an error saying the file does not exist. What is the most likely cause?
medium
A. The ConfigMap name is invalid
B. The file config.txt is not in the current directory
C. You need to use --from-env-file instead
D. kubectl command does not support --from-file

Solution

  1. Step 1: Check file existence requirement

    The --from-file flag requires the file to exist in the current directory or given path.
  2. Step 2: Identify cause of error

    If the file is missing or path is wrong, kubectl will error that the file does not exist.
  3. Final Answer:

    The file config.txt is not in the current directory -> Option B
  4. Quick Check:

    File must exist where command runs [OK]
Hint: Check file path and existence before creating ConfigMap [OK]
Common Mistakes:
  • Assuming ConfigMap name causes file error
  • Using wrong flag instead of --from-file
  • Ignoring file location or path
5. You have two config files: db.conf and app.conf. You want to create a single ConfigMap named multi-config containing both files as keys. Which command should you use?
hard
A. kubectl create configmap multi-config --from-file=db.conf --from-file=app.conf
B. kubectl create configmap multi-config --from-file=db.conf,app.conf
C. kubectl create configmap multi-config --from-file=./db.conf ./app.conf
D. kubectl create configmap multi-config -f db.conf -f app.conf

Solution

  1. Step 1: Understand multiple file syntax

    To add multiple files, use multiple --from-file flags, one per file.
  2. Step 2: Match correct command format

    kubectl create configmap multi-config --from-file=db.conf --from-file=app.conf uses two --from-file flags correctly: --from-file=db.conf --from-file=app.conf.
  3. Final Answer:

    kubectl create configmap multi-config --from-file=db.conf --from-file=app.conf -> Option A
  4. Quick Check:

    Multiple files = multiple --from-file flags [OK]
Hint: Use one --from-file per file to add multiple files [OK]
Common Mistakes:
  • Trying to list files separated by commas
  • Using -f flag which is for manifests
  • Passing multiple files without repeating --from-file
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