Ich versuche, einen einfachen kubernetes-Pod zu erstellen und benutze ein kubernetes-Geheimnis, aber leider habe ich nach der Ausführung von "kubectl create -f pod. yml“:Ungültiger Wert bei dem Versuch, einen kubernetes-Pod mit einem geheimen Code zu erstellen
The Pod "hello-pod" is invalid. spec.containers[0].env[0].valueFrom: Invalid value: "": may not have more than one field specified at a time
ist hier mein secret.yml:
apiVersion: v1
kind: Secret
metadata:
name: mysecret
type: Opaque
data:
testenv: cWprb3IK
Und mein pod.yml:
apiVersion: v1
kind: Pod
metadata:
name: hello-pod
labels:
name: hello
spec:
containers:
- name: hello-world
image: myregistry.int/hello-world
ports:
- containerPort: 8095
hostPort: 8095
command: [ "/bin/sh", "-c", "env" ]
env:
- name: testenv
valueFrom:
secretKeyRef:
name: mysecret
key: testenv
Zuerst habe ich das Geheimnis, und wenn ich „kubecetl bekommen geheime mysecret -o yaml“ das Ergebnis Typ:
apiVersion: v1
data:
testenv: cWprb3IK
kind: Secret
metadata:
creationTimestamp: 2016-04-08T12:29:19Z
name: mysecret
namespace: default
resourceVersion: "196098"
selfLink: /api/v1/namespaces/default/secrets/mysecret
uid: 846648e7-fd85-11e5-a81b-4439c4383162
type: Opaque
Das funktioniert für mich. Welche Version hast du? Sie können dies von 'kubectl version' erfahren. – janetkuo
Ja, das war es, ich benutzte Client-Version 1.1.8. Alles funktioniert gut nach dem Herunterladen der neuesten Version 1.2.2. Danke :) –