k8s使用secret从私有仓库拉取镜像

本文介绍了如何在Kubernetes(k8s)中利用Secret对象处理从私有仓库拉取镜像的问题。当使用K8s时,不需要在每个Node节点手动登录私有仓库。Secret主要有三种类型,重点讲述了用于存储私有docker registry认证信息的`kubernetes.io/dockerconfigjson`类型。当遇到拉取镜像权限问题时,可以通过创建和应用Secret来解决。步骤包括使用kubectl创建Secret,特别强调了--namespace参数的重要性,以及在Pod的yaml配置中引用Secret。成功设置后,Pod就能正常拉取私有仓库的镜像了。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

        使用docker从私有仓库拉取经销,可以使用docker login [私有仓库地址]  然后输入用户名和密码登录后就可以拉取镜像了,但如果使用k8s时,node 节点过多,难道需要跑到每个node节点去执行一次登录么?当然不是.这里就牵扯到k8s中的一个secret的东西.

Secret 有三种类型: 

  • Service Account :用来访问 Kubernetes API,由 Kubernetes 自动创建,并且会自动挂载到 Pod 的/run/secrets/kubernetes.io/serviceaccount  目录中
  • Opaque :base64编码格式的Secret,用来存储密码、密钥等
  • kubernetes.io/dockerconfigjson :用来存储私有 docker registry 的认证信息

 

这里主要介绍第三种kubernetes.io/dockerconfigjson 如何使用.当使用k8s命令启动pod时,出现了

      rpc error: code = Unknown desc = Error response from daemon: pull access denied for 222.212.85.199:12375/gzlt/gzlt, repository does not exist or may require 'docker login'

 rpc error: code = Unknown desc = Error response from daemon: pull access denied for 222.212.85.199:12375/gzlt/gzlt, repository does not exist or may require 'docker login'
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值