DevOps
Intermediate
What is Kubernetes ConfigMap?
A Kubernetes object that stores non-sensitive configuration data as key-value pairs, injected into pods as environment variables or files.
ConfigMaps decouple configuration from container images, enabling the same image to run with different settings across environments (dev, staging, production). They store configuration as key-value pairs or entire configuration files. Pods consume ConfigMaps through environment variables, command-line arguments, or mounted volumes. Unlike Secrets (which store sensitive data with base64 encoding), ConfigMaps are for non-sensitive configuration like feature flags, database hostnames, and application settings. ConfigMaps can be updated without redeploying pods when mounted as volumes (with a brief propagation delay). They are namespace-scoped and can be managed declaratively through YAML manifests.