一、前言:
對於初學者來說,k8s的鏡像問題往往會將他們攔在學習門外,今天就白話一下k8s眾多鏡像的獲取方式,前提只有一個:你能上百度。
二、github和dockerhub賬號准備,這個沒任何門檻,只要知道這兩兄弟是啥,分分鍾鍾可以注冊為新用戶。
創建github倉庫,
1 github:
eg,我創建的:https://github.com/f1017746640/k8simages
(圖一)
打開其中一個Dockerfile,內容如下:
(圖二)
2 dockerhub:
首先dockerhub要鏈接到你的github,鏈接的方法見下圖:
(圖三)
(圖四)
建立鏈接的過程按照(圖三)和(圖四)來做,即可,(圖四)是我已經建立了鏈接,尚未建立鏈接前,按照提示點擊即可。
dockerhub和github建立鏈接后,就可以創建自動構建了,過程如下:
(圖五)
如(圖五)點擊:Create Automated Build,然后會跳轉到(圖六)
(圖六)
(圖七)
右邊選取你之前github上創建的項目,然后跳轉到(圖八)
(圖八)
點擊:Create,然后在(圖九)中設置構建工程,可參考下圖:
(圖九)
保存修改並點擊觸發,構建工程就開始了,見下(圖十)
(圖十)
顯示成功,你就完成了鏡像的自動構建工作,如果顯示失敗,可點擊查看錯誤日志,如果你是按照上面教程一步一步走下來的,肯定會成功。
(圖十一)
到這我們就可以拉取鏡像了:
docker pull 1017746640/kube-apiserver:v1.12.0
然后重新打ag成我們需要的名稱:
docker tag 1017746640/kube-apiserver:v1.12.0 k8s.gcr.io/kube-apiserver:v1.12.0
這里是拿kube-apiserver這個鏡像來舉的例子,k8s別的鏡像同樣按照上述方式獲取。
當然如果遇到別的用途的鏡像沒法pull時同樣可以按照上述的方式來獲取目標鏡像。
同樣你可以pull我上面的鏡像,只不過版本是k8s1.12的。
補充,由於dockerhub頁面改版,部分界面有所變化,但操作流程不變,下面匯總下做法:
其余地方同。