全部产品
云市场

使用保密字典

更新时间:2020-03-31 16:08:07

您可以在工作负载环境变量、命令行参数和数据卷三个场景使用保密字典(Secrets),也可以在 创建应用服务 的配置 Pod 模板步骤中使用保密字典拉取镜像。

前提条件

  • 创建保密字典
  • 在 Pod 里使用保密字典时,需 Pod 和保密字典处于同一命名空间中。
  • 本文以下面这个保密字典为例介绍保密字典的用法。
    1. apiVersion: v1
    2. kind: Secret
    3. metadata:
    4. name: mysecret
    5. namespace: yournamespace #改成当前的命名空间名称
    6. type: Opaque
    7. data:
    8. username: my-username #用户名
    9. password: ****** #需要用Base64编码

用保密字典配置 Pod 的数据卷


保密字典可以在 Pod 中作为文件使用。

  1. 登录控制台,在左侧导航栏点击 集群管理 > 集群。
  2. 在集群列表页,点击集群名称进入集群详情页。
  3. 在左侧导航栏点击 工作负载 > 容器组(Pods)
  4. 点击 从 YAML 创建,在输入框中输入以下内容,点击 提交
    如以下 Pod 示例所示,mysecret 密钥的 username 和 password 以文件方式保存在 /etc/foo 目录下。

    1. apiVersion: v1
    2. kind: Pod
    3. metadata:
    4. name: mypod
    5. namespace: yournamespace #改成当前的命名空间名称
    6. spec:
    7. containers:
    8. - name: mypod
    9. image: redis
    10. volumeMounts:
    11. - name: foo
    12. mountPath: "/etc/foo"
    13. readOnly: true
    14. volumes:
    15. - name: foo
    16. secret:
    17. secretName: mysecret

用保密字典设置 Pod 的环境变量


保密字典可以在 Pod 中设置为环境变量。

  1. 登录控制台,在左侧导航栏点击 集群管理 > 集群。

  2. 在集群列表页,点击集群名称进入集群详情页。

  3. 在左侧导航栏点击 工作负载 > 容器组(Pods)

  4. 点击 从 YAML 创建,在输入框中输入以下内容,点击 提交

    如以下 Pod 示例所示,mysecret 密钥的 username 和 password 配置为 Pod 的环境变量。

    1. apiVersion: v1
    2. kind: Pod
    3. metadata:
    4. name: secret-env-pod
    5. namespace: yournamespace #改成当前的命名空间名称
    6. spec:
    7. containers:
    8. - name: mycontainer
    9. image: redis
    10. env:
    11. - name: SECRET_USERNAME
    12. valueFrom:
    13. secretKeyRef:
    14. name: mysecret
    15. key: username
    16. - name: SECRET_PASSWORD
    17. valueFrom:
    18. secretKeyRef:
    19. name: mysecret
    20. key: password
    21. restartPolicy: Never