# Configuration Resource

> Use ConfigMaps to decouple configuration from application code

- **Category**: Cloud
- **Subcategory**: Configuration
- **Canonical URL**: https://designpattern.fyi/patterns/k8s_configuration_resource/

---

## Description
The Configuration Resource pattern uses ConfigMaps to decouple configuration from application code. ConfigMaps can store configuration data as key-value pairs, which can be mounted as files or injected as environment variables. This enables configuration changes without rebuilding images and supports different configurations for different environments.


## Use Cases
Use when you want to externalize configuration or when you need to manage configuration separately from application code.





## Trade-offs


### Advantages

- Decouples configuration from code

- Supports different environments

- Can be mounted as files or env vars

- Version control friendly




### Considerations & Drawbacks

- Requires application changes to use

- Limited size per ConfigMap

- Need to manage ConfigMap lifecycle







---
**Reference**: [Original Source](https://github.com/k8spatterns/examples/tree/master/configuration/ConfigurationResource)

