Kubernetes Secrets Operations: Difference between revisions

From NovaOrdis Knowledge Base
Jump to navigation Jump to search
Line 15: Line 15:


{{External|[https://kubernetes.io/docs/concepts/configuration/secret/#creating-a-secret-using-kubectl-create-secret Creating a Secret Using kubectl create secret]}}
{{External|[https://kubernetes.io/docs/concepts/configuration/secret/#creating-a-secret-using-kubectl-create-secret Creating a Secret Using kubectl create secret]}}
===From File===


Declare the secret content in one (or more) file(s) on the local filesystem. When the secret is exposed to a pod, the content will be available as volume files with the same name.
Declare the secret content in one (or more) file(s) on the local filesystem. When the secret is exposed to a pod, the content will be available as volume files with the same name.
Line 37: Line 39:
username.txt:  9 bytes
username.txt:  9 bytes
</syntaxhighlight>
</syntaxhighlight>
===From Literal===


===Special Character Handling===
===Special Character Handling===

Revision as of 17:20, 22 August 2019

Internal

Inspecting Secrets

kubectl get secrets
kubectl describe secret secret-name

Create a Secret

With kubectl CLI

Creating a Secret Using kubectl create secret

From File

Declare the secret content in one (or more) file(s) on the local filesystem. When the secret is exposed to a pod, the content will be available as volume files with the same name.

echo -n "test-user" > ./username.txt
echo -p "test-password" > ./password.txt
kubectl create secret generic username-and-password --from-file=./username.txt --from-file=./password.txt

This will create the following secret:

Name:         username-and-password
Namespace:    test
Labels:       <none>
Annotations:  <none>

Type:  Opaque

Data
====
password.txt:  17 bytes
username.txt:  9 bytes

From Literal

Special Character Handling

Special characters such as '$', '*' and '!' require escaping (\).

From a Manifest