從 Pod 上的 Kubernetes 取得所有 Secret

從 Pod 上的 Kubernetes 取得所有 Secret

首先,我已經閱讀了文檔,並且看到了這段文字,這是非常不言自明的,To use a secret, a pod needs to reference the secret.但我想看看是否有可能從秘密定義中獲取所有秘密,而無需在pod 中定義每個秘密,我的意思是這是。

這就是我所擁有的

        env:
            - name: MY_FRST_SECRET
              valueFrom:
                secretKeyRef:
                  name: secret
                  key: MY_FRST_SECRET
            - name: MY_SECOND_SECRET
              valueFrom:
                secretKeyRef:
                  name: secret
                  key: MY_SECOND_SECRET

這就是我要的

        env:
            - name: *
              valueFrom:
                secretKeyRef:
                  name: secret
                  key: *

我知道這看起來很愚蠢,但我的意思是我想看看是否有一種方法可以獲取秘密中的所有變量,並使用與定義變量相同的名稱導入它們。所以它會是

VarName = SecretName
VarValue = SecretValue

先致謝!

答案1

我發現我可以實現這一點,但是使用配置圖,這裡是有關如何做到這一點的文檔鏈接https://kubernetes.io/docs/tasks/configure-pod-container/configure-pod-configmap/#configure-all-key-value-pairs-in-a-configmap-as-container-environment-variables

如果以後URL發生變化,這裡是參考碼

apiVersion: v1
   kind: Pod
   metadata:
     name: dapi-test-pod
   spec:
     containers:
       - name: test-container
         image: k8s.gcr.io/busybox
         command: [ "/bin/sh", "-c", "env" ]
         envFrom:
         - configMapRef:
             name: special-config
     restartPolicy: Never

相關內容