目录
1 诉家常
2 K8s配置镜像源
2.1 配置docker
2.2 Kubesphere配置镜像源
2.2.1 创建镜像源-基本信息
2.2.2 创建镜像源-密钥设置
2.3 K8s使用私有镜像仓库
2.3.1 创建工作负载
3 经验
上一篇,已经讲解了如何给harbor镜像仓库推送镜像。这一篇分享下,在k8s里头如何配置和使用harbor私有镜像仓库。
喜讯:这个讲解掉,前面说的k8s部署镜像,拉取慢或者失败的问题就不存在了。
1 诉家常
终于等到这个步骤了,之前我们使用k8s的时候一直不顺利,主要在于镜像选取和下载不行,这个都得归咎于镜像源不行,因为使用的是docker.io的镜像源。
2 K8s配置镜像源
2.1 配置docker
在master节点机器,进入到/etc/docker编辑文件daemon.json。
执行命令:
vi /etc/docker/daemon.json
在json里头增加一个配置:
"insecure-registries":["http://192.168.211.5:80"],
重启docker以生效:
systemctl daemon-reload && systemctl restart docker && systemctl enable docker
2.2 Kubesphere配置镜像源
从如下面板进入创建:
2.2.1 创建镜像源-基本信息
2.2.2 创建镜像源-密钥设置
2.3 K8s使用私有镜像仓库
上面已经配置了私有镜像仓库,下面演示一个如何从私有仓库选取镜像的方法。
注意:目前私有仓库里头只有一个nginx镜像,所以只能演示nginx镜像。
2.3.1 创建工作负载
再回到harbor,我们要拉取的是nginx的镜像,需要从harbor找到两个信息:
第一个镜像名称:
第二个镜像标签(版本)
下面的项目名/包名就是镜像的名称。
其他的配置都不做修改,默认设置即可。
创建之后,大概1分钟以内吧,nginx负载就部署成功了。这个就是创建私有镜像的好处呀。
3 经验
因此未来在使用k8s部署镜像的时候,如果镜像获取的不是很顺利,那么可以通过先把镜像推送到私有仓库然后再拉取镜像。
这个时候有人会问了,为啥要这么做呢?是因为本地拉取镜像过程使用了阿里云的镜像加速器,本地拉取镜像速度很快,但是k8s上默认拉取镜像的地址为docker.io,这个地址在国内访问巨慢。所以才这样曲线实现。
至此k8s系列基础部分全部结束。
未来如何该系列还有更新的话,主要是更新基于k8s的应用的实现。
比如nginx在k8s里头怎么用。
比如集群在k8s里头如何共享存储之类的。


![[基于harbor部署私有仓库] 5 k8s使用harbor私有镜像仓库 [基于harbor部署私有仓库] 5 k8s使用harbor私有镜像仓库](http://www.mshxw.com/aiimages/31/277057.png)
