私は単純なkubernetesポッドを作成しようとしていますが、kubernetesの秘密を使っていますが、残念ながらkubectl create -f podを実行した後に次のエラーが発生しました。 YML」:ここでは秘密のkubernetesポッドを作成しようとしたときに無効な値
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
は私secret.ymlです:
apiVersion: v1
kind: Secret
metadata:
name: mysecret
type: Opaque
data:
testenv: cWprb3IK
そして、私の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
は、まず、私は秘密を作成し、私が入力したときに「秘密のmysecret -o YAMLを得るkubecetl」の結果は次のとおりです。
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
これは私のために動作します。実行しているバージョンは何ですか? 'kubectl version'からこれを知ることができます。 – janetkuo
はい、それは、私はクライアントバージョン1.1.8を使用していました。すべて最新の1.2.2バージョンをダウンロードした後に正常に動作します。ありがとう:) –