Kubernetes-Secrets
A Kubernetes Secret is an object that contains a small amount of sensitive data such as a password, a token, or a key. Such information might otherwise be put in a Pod specification or in a container image. Using a Secret means that you don't need to include confidential data in your application code.
YAML
apiVersion: v1 kind: Secret metadata: name: example-secret type: Opaque data: app-password: NXVQNFNlS3J5dA== admin-password: RDBub3Q1VDM0TA==
Accessing a secret
- As an environment variable
apiVersion: apps/v1 ... spec: template: ... spec: containers: ... env: - name: DATABASE_PASSWORD valueFrom: secretKeyRef: name: example-secret key: db-password
- As a volume
apiVersion: apps/v1 ... spec: template: ... spec: containers: ... volumes: - name: secrets secret: secretName: example-secret container: ... volumeMounts: - name: secrets mountPath: /etc/example-secrets readOnly: true