Kubernetes manifests cheatsheet

Kubernetes manifests: Config and storage

5 common Kubernetes manifests tasks.

Namespace

Create a namespace to group resources.

apiVersion: v1
kind: Namespace
metadata:
  name: staging

ConfigMap

Store non-secret configuration.

apiVersion: v1
kind: ConfigMap
metadata:
  name: app-config
data:
  LOG_LEVEL: info
  FEATURE_X: "true"

Secret

Store sensitive values. stringData accepts plain text, which Kubernetes encodes. Secrets are only base64-encoded unless you enable encryption at rest.

apiVersion: v1
kind: Secret
metadata:
  name: db-secret
type: Opaque
stringData:
  password: change-me

Caution: Don't commit real secrets to Git. Use a secrets manager or sealed secrets.

PersistentVolumeClaim

Request storage that outlives a pod.

apiVersion: v1
kind: PersistentVolumeClaim
metadata:
  name: data
spec:
  accessModes: [ReadWriteOnce]
  resources:
    requests:
      storage: 10Gi

Mount a volume

Mount a claim into a container.

containers:
  - name: app
    image: myapp:1.0
    volumeMounts:
      - name: data
        mountPath: /var/lib/app
volumes:
  - name: data
    persistentVolumeClaim:
      claimName: data

Was this page helpful?