Go 在Kubernetes上安装证书

Go 在Kubernetes上安装证书,go,kubernetes,Go,Kubernetes,我刚开始探索Kubernetes,并在Kubernetes上的一个容器中部署了一个服务,该容器在云上运行 我的服务需要调用需要证书进行身份验证的数据库。我想知道在Kubernetes上存储/安装证书的最佳实践是什么 我需要从我使用的代码中访问证书,如下所示 const ( serverCertificate = "./cert/api.cer" serverPrivateKey = "./cert/api.key" ) creds, err := credentials.New

我刚开始探索Kubernetes,并在Kubernetes上的一个容器中部署了一个服务,该容器在云上运行

我的服务需要调用需要证书进行身份验证的数据库。我想知道在Kubernetes上存储/安装证书的最佳实践是什么

我需要从我使用的代码中访问证书,如下所示

const (
    serverCertificate = "./cert/api.cer"
    serverPrivateKey  = "./cert/api.key"
)
creds, err := credentials.NewServerTLSFromFile(serverCertificate, serverPrivateKey)

您可以将证书存储在Kubernetes机密中:

下面是一个如何执行此操作的示例:

当然可以。关于如何从我的代码访问证书的任何想法。我用我的代码编辑了这个问题,它描述了如何将一个秘密作为文件投影到容器中。将您的证书作为机密,然后将其投影到您的容器中任何您想要的地方。@Dancemachine这可能会起作用,但我现在也在尝试保持代码不变,而不是从Kubernete上的./cert文件夹访问证书证书可以保存在K8S机密中,并且可以装载到容器中任何文件夹中的任何文件夹中。在您的情况下。/cert.
要使用机密,pod需要引用该机密。秘密可以通过两种方式与pod一起使用:作为卷中的文件安装在一个或多个容器上,或者由kubelet在为pod提取图像时使用。