1. 问题
假如我们自己搭建了私有仓库,并在其中上传了需要使用的镜像。这时候我们在k8s集群的机器上,通过docker pull
是能拉取到私有仓库镜像的。但是k8s是获取不到docker的私有仓库的认证信息的,这时候就会出现ImagePullBackOff的问题。
2. 临时解决问题的办法
yaml文件的imagePullPolicy支持Always、IfNotPresent和Never三种方式,如果不写默认就是Always,所以我们可以在临时使用的机器上通过docker pull
把需要的镜像拉下来,然后设置imagePullPolicy为IfNotPresent或者Never,这样k8s就不会去pull镜像。
如果设置imagePullPolicy为Always,就算你通过docker pull
预先把需要的镜像拉下来了,k8s还是会去pull镜像,并且拉取不了就报错。
如果是实际生产,这个方法明显有很多问题,所以是临时。
网友评论