docker 从harbor 拉取镜像慢_Kubernetes-通过Rancher从Harbor私有仓库拉取镜像
引言
??前一篇文章詳細(xì)描述了如何使用rancher搭建Kubernetes高可用集群,集群搭建好了后,我們就需要開(kāi)始部署應(yīng)用了,那么如何從私有鏡像倉(cāng)庫(kù)拉取鏡像呢?
原理
??Harbor使用了基于角色的訪問(wèn)控制策略,正常情況下我們從Harbor中拉取鏡像的時(shí)候,首先要配置docker daemon,配置方法可以參考這篇文章,docker daemo配置中–insecure-registry屬性是來(lái)告訴docker daemo我們所使用的docker registry是可信的,這樣才能從私有的docker registry中拉取鏡像,然后進(jìn)行身份認(rèn)證,輸入【docker login {harbor} -u xxx -p xxx】,如果提示登錄成功,我們接下來(lái)才可以輸入【docker pull】命令拉取鏡像。
但是在Kubernetes中使用Harbor作為私有鏡像倉(cāng)庫(kù)拉取鏡像時(shí)使用這招就不靈了,kubernetes提供了2個(gè)對(duì)象:Secret和ServiceAccount
Secret 用來(lái)存儲(chǔ)敏感信息,例如密碼、認(rèn)證令牌和免密登錄信息,把這些信息放在secret中相比放在POD的定義或Docker鏡像中更安全也更靈活,可以被用來(lái)kubelet拉取鏡像;
image pull secret
ServiceAccount 為運(yùn)行在pod中的進(jìn)程提供身份信息。
配 置
??通過(guò)上面的描述可以看出Kubernetes通過(guò)Secret配置連接Harbor私有倉(cāng)庫(kù),詳細(xì)配置之前在這篇文章中介紹過(guò),但是我們現(xiàn)在使用的是Rancher搭建的Kubernetes集群,會(huì)發(fā)現(xiàn)一個(gè)問(wèn)題,現(xiàn)在的Kubernetes都是部署在容器內(nèi)的,和之前的直接部署不一樣,不過(guò)在Rancher的界面上能看到一個(gè)按鈕【執(zhí)行kubectl命令行】
Cluster
我們點(diǎn)擊這個(gè)按鈕后就可以通過(guò)命令行創(chuàng)建Secret,輸入如下信息
kubectl create secret docker-registry secret-name --namespace=default --docker-server=http://192.168.242.132 --docker-username=username --docker-password=password --docker-email=xxx@xxx.xxxsecret-name:secret的名稱(chēng)namespace:命名空間docker-server:Harbor倉(cāng)庫(kù)地址docker-username:Harbor倉(cāng)庫(kù)登錄賬號(hào)docker-password:Harbor倉(cāng)庫(kù)登錄密碼docker-email:郵件地址運(yùn)行完就能看到創(chuàng)建成功的提示了,接著轉(zhuǎn)到部署服務(wù)的界面,在docker鏡像那里輸入我們Harbor倉(cāng)庫(kù)中的鏡像地址,點(diǎn)擊運(yùn)行,就可以看到創(chuàng)建成功了。
deploy
set docker image
pod state
想了解更多資訊,請(qǐng)您關(guān)注實(shí)戰(zhàn)云公眾號(hào)
總結(jié)
以上是生活随笔為你收集整理的docker 从harbor 拉取镜像慢_Kubernetes-通过Rancher从Harbor私有仓库拉取镜像的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: ffmpeg rtmp 不清晰_知识储备
- 下一篇: springboot controlle