首页 > 解决方案 > 如何从 Kubernetes 中的 Secret 挂载单个文件?

问题描述

如何从秘密挂载“单个”文件?

我创建了一个秘密:

kubectl create secret generic oauth \
        --from-file=./.work-in-progress/oauth_private.key \
        --from-file=./.work-in-progress/oauth_public.key \

如何将oauth_private.key文件挂载为单个文件,而不是使用仅包含两个文件的目录覆盖整个路径(并可能删除最初存在于容器上的文件)?

标签: kuberneteskubernetes-secrets

解决方案


你可以这样做:

apiVersion: v1
kind: Pod
metadata:
  name: mypod
spec:
  containers:
  - name: mypod
    image: redis
    volumeMounts:
    - name: foo
      mountPath: "/etc/foo"
      readOnly: true
  volumes:
  - name: foo
    secret:
      secretName: mysecret
      items:
      - key: username
        path: my-group/my-username

假设mysecret包含usernamepassword。上面的 yaml 只会挂载username/etc/foo/my-group/my-username目录中。

有关更多详细信息,请查看:将秘密用作 Pod 中的文件


推荐阅读