2 min read | by Jordi Prats
A ConfigMap an object intended to store configuration for other objects to use. To create a config map we just need to add the data we want to store on the configmap as keys on the data section:
apiVersion: v1 kind: ConfigMap metadata: name: demo-configmap data: file1.txt: | this is an example file2.txt: | this is another example
To be able to use this ConfigMap we will need to mount it to a Pod as a volume. To do so we'll need to declare it as a volume and then use volumeMounts to mount it on the container:
apiVersion: v1 kind: Pod metadata: name: configmapdemo spec: volumes: - name: cmdata configMap: name: demo-configmap containers: - image: busybox command: [ "sleep", "24h" ] name: demo volumeMounts: - name: cmdata mountPath: /configmap
Once we apply this Pod and ConfigMap to the cluster:
$ kubectl apply -f . configmap/demo-configmap created pod/configmapdemo created
We can check that we can access the ConfigMap data as files using kubectl exec:
$ kubectl exec -it configmapdemo -- ls /configmap file1.txt file2.txt $ kubectl exec -it configmapdemo -- cat /configmap/file1.txt this is an example $ kubectl exec -it configmapdemo -- cat /configmap/file2.txt this is another example
Posted on 28/06/2021