kubectl ConfigMaps & Secrets commands

28 commands in 3 groups: Manage, ConfigMaps Inspect, Secrets Inspect. Click or tap any command to copy it. Official documentation: kubernetes.io.

Open in the interactive cheat sheet search, stars and every other section

Manage

Create ConfigMaps and Secrets from literals, files, or manifests, edit them in-place, and remove them.
kubectl apply -f configmap.yaml
Apply ConfigMap from manifest
kubectl apply -f secret.yaml
Apply secret from manifest
kubectl create configmap <name> --from-env-file=.env
Create from .env file
kubectl create configmap <name> --from-file=<file>
Create from file (filename = key)
kubectl create configmap <name> --from-literal=<key>=<value>
Create from key=value literal
kubectl create secret docker-registry <name> --from-file=.dockerconfigjson=<path>
Create pull secret from existing docker config
kubectl create secret generic <name> --from-file=<file>
Create generic secret from file
kubectl create secret generic <name> --from-literal=<key>=<value>
Create generic secret from literal
kubectl create secret tls <name> --cert=<cert> --key=<key>
Create TLS secret from cert/key files
kubectl create secret docker-registry <name> --docker-server=<server> --docker-username=<user> --docker-password=<pass>
Create image pull secret
kubectl delete configmap <name>
Delete a ConfigMap
kubectl delete secret <name>
Delete a secret
kubectl edit configmap <name>
Edit ConfigMap in-place
kubectl edit secret <name>
Edit secret in-place (base64 values)

ConfigMaps Inspect

List ConfigMaps and read their keys and values across namespaces.
kubectl describe configmap <name>
ConfigMap details and data keys
kubectl get cm
Short alias for get configmaps
kubectl get configmaps
List ConfigMaps in current namespace
kubectl get cm -n <namespace>
ConfigMaps in a namespace
kubectl get configmap <name> -o jsonpath='{.data.<key>}'
Read a specific value from ConfigMap
kubectl get configmap <name> -o yaml
Get full ConfigMap as YAML
kubectl get configmaps -A
All ConfigMaps across namespaces

Secrets Inspect

List Secrets and extract or decode their base64-encoded values.
kubectl describe secret <name>
Secret metadata (values are hidden)
kubectl get secrets
List secrets in current namespace
kubectl get secret <name> -o jsonpath='{.data.<key>}'
Extract a base64-encoded value
kubectl get secret <name> -o yaml
Get full secret as YAML
kubectl get secrets -A
All secrets across namespaces
kubectl get secrets -n <namespace>
Secrets in a specific namespace
kubectl get secret <name> -o jsonpath='{.data.<key>}' | base64 -d
Decode a secret value directly