上一篇
如何进行Kubernetes中Secret和私有仓库认证
- 行业动态
- 2023-12-25
- 1
Kubernetes中Secret的概述
在Kubernetes中,Secret是一种用于存储敏感信息的资源对象,例如密码、密钥、证书等,与ConfigMap不同,Secret以base64编码的形式存储数据,因此更适合存储敏感信息,Secret可以在Pod之间共享,也可以通过环境变量或卷挂载的方式在容器内使用,本文将介绍如何在Kubernetes中创建和管理Secret。
创建Secret
1、创建一个名为my-secret.yaml的文件,内容如下:
apiVersion: v1 kind: Secret metadata: name: my-secret type: Opaque data: username: MTIzNDU2 password: cGFzc3dvcmQ=
2、使用kubectl命令创建Secret:
kubectl create -f my-secret.yaml
3、查看已创建的Secret:
kubectl get secrets
使用Secret中的数据
1、在Pod的配置文件中引用Secret:
apiVersion: v1 kind: Pod metadata: name: my-pod spec: containers: name: my-container image: my-image envFrom: secretRef: name: my-secret name: MY_ENV_VARIABLE valueFrom: secretKeyRef: name: my-secret key: username
2、在容器内使用环境变量访问Secret中的数据:
import os username = os.environ['MY_ENV_VARIABLE'] password = os.environ['MY_OTHER_ENV_VARIABLE']
私有仓库认证在Kubernetes中的应用
1、在私有仓库中创建一个名为.dockerconfigjson的文件,内容如下(以Docker Hub为例):
{ "auths": { "https://index.docker.io/v1/": { "auth": "dXNlcm5hbWU6cGFzc3dvcmQ=", // base64编码后的"dXNlcm5hbWU6cGFzc3dvcmQ=="字符串即为密码(这里假设已经存在) "email": "your@email.com", // Docker Hub用户邮箱地址(可选) "username": "your_username" // Docker Hub用户名(可选)
本站发布或转载的文章及图片均来自网络,其原创性以及文中表达的观点和判断不代表本站,有问题联系侵删!
本文链接:http://www.xixizhuji.com/fuzhu/339363.html