来自卷的数据作为kubernetes的秘密

时间:2019-06-14 21:55:37

标签: node.js docker kubernetes docker-compose

我有一个以docker-compose up开头的应用程序。某些ssh凭据随主机的卷中的json文件一起提供。我想在kubernetes中运行该应用程序,如何使用kubernetes机密提供凭据?我的json文件如下:

{
  "HOST_USERNAME"="myname",
  "HOST_PASSWORD"="mypass",
  "HOST_IP"="myip"
}

我用base64创建了一个名为mysecret.yml的文件,并在kubernetes中应用了

apiVersion: v1
kind: Secret
metadata:
  name: mysecret
type: Opaque
data:
  HOST_USERNAME: c2gaQ=
  HOST_PASSWORD: czMxMDIsdaf0NjcoKik=
  HOST_IP: MTcyLjIeexLjAuMQ==

为了正确使用密码,我该如何在Deployment.yml中写入卷?

1 个答案:

答案 0 :(得分:1)

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

这是上面使用secret作为卷的示例。您可以使用它来定义部署。

有关更多信息,请参考kubernetes官方文档: https://kubernetes.io/docs/concepts/configuration/secret/