k8s 配置从私有仓库拉取镜像
有时候我们的镜像是保存在私有仓库,本地部署时,只要登陆一下私有仓库,就可以了。但是如果需要在 k8s 里面部署呢?
这时候有两个方法可以解决:
- 在集群里每个 node 上配置密钥;
- 使用 K8S 官方推荐的方式:在同一个 namespace 里配置 secrect,并在 pod specification 中设置 imagePullSecrect 字段就可以了。
踩坑的点:secrect 是 namespace 隔离的,所有需要在部署 deploy/pod 所在的 namespace 里配置。
本文参考自官方文档
2021-03-11 补充
最近从同事那学到一个新技巧,将 imagePullSecret 配置到 serviceaccount 中,即可在当前 namespace 下直接拉取私有镜像(配置到 default serviceaccount)
此方法参考自官方文档