CHAPTER 21 Configuration Template The  Configuration Template  pattern enables creating and processing large and com‐ plex configurations during application startup. The generated configuration is spe‐ cific to the target runtime environment as reflected by the parameters used in processing the configuration template. In Chapter 19,  Configuration Resource  you saw how to use the Kubernetes native resource objects ConfigMap and Secret to configure applications. But sometimes con‐ figuration files can get large and complex. Putting the configuration files directly into ConfigMaps can be problematic since they have to be correctly embedded in the resource definition. We need to be careful and avoid special characters like quotes and breaking the Kubernetes resource syntax. The size of configurations is another consideration, as there is a limit on the sum of all values of ConfigMaps or Secrets, which is 1 MB (a limit imposed by the underlying backend store Etcd). Large configuration files typically differ only slightly for the different execution envi‐ ronments. This similarity leads to a lot of duplication and redundancy in the Config‐ Maps because each environment has mostly the same data. The  Configuration Template  pattern we explore in this chapter addresses these specific use-case concerns. To reduce the duplication, it makes sense to store only the  differing  configuration val‐ ues like database connection parameters in a ConfigMap or even directly in environ‐ ment variables. During startup of the container, these values are processed with Configuration Templates  to create the full configuration file (like a JBoss WildFly 165 Solution Problem