1. 程式人生 > 其它 >臥槽,原來不需要FQ就可以構建海外映象

臥槽,原來不需要FQ就可以構建海外映象

一. 背景

使用docker或者k8s的過程中,我們可能遇到映象無法下載的情況,例如:kubernetes的kube-apiserver映象,這是因為其倉庫在海外,我們的網路被牆,我發獲取到該資源,使用合法的方式,成本又太高,今天小編來分享一個簡單而又實用的海外映象構建方法。

二. 實現原理

首先利用docker構建映象的方式,定義海外映象的Dockerfile,裡面只需要編寫“ FROM k8s.gcr.io/kube-apiserver:v1.20.3”
然後利用阿里雲容器映象服務,建立一個關聯上程式碼倉庫並且使用海外機器構建的倉庫,這樣阿里雲就可以下載海外映象到阿里雲。
再然後,我們將剛剛在阿里雲上構建的pull到本地,通過docker tag 的方式需改成我們需要的映象。

三. 所需要的平臺

所需要的平臺有GitHub和阿里雲。

四. 實現步驟

以下將以構建k8s.gcr.io/kube-apiserver:v1.20.3為例

  1. 建立kube-apiserver映象的Dockerfile
  1. 使用阿里雲的容器映象服務建立一個倉庫


4、設定構建規則並構建


  1. 完成海外映象的下載


[root@kubernetes-master-01 ~]# docker pull registry.cn-qingdao.aliyuncs.com/alvinos/kube-apiserver:v1.20.3
v1.20.3: Pulling from alvinos/kube-apiserver
fefd475334af: Already exists 
742efefc8a44: Already exists 
3e9abf3317b1: Pull complete 
Digest: sha256:4250b36e06a5083343f97b3097d3d647703f0e6b580373224ab846db7e18df3f
Status: Downloaded newer image for registry.cn-qingdao.aliyuncs.com/alvinos/kube-apiserver:v1.20.3
registry.cn-qingdao.aliyuncs.com/alvinos/kube-apiserver:v1.20.3
[root@kubernetes-master-01 ~]# docker tag registry.cn-qingdao.aliyuncs.com/alvinos/kube-apiserver:v1.20.3 k8s.gcr.io/kube-apiserver:v1.20.3
[root@kubernetes-master-01 ~]# docker images | grep k8s
k8s.gcr.io/kube-apiserver                                         v1.20.3    2a2ba256a50b   4 months ago    122MB

到此構建海外映象就結束了。

更多科技諮詢,請關注微信公眾號:山河程式設計

如果您覺得這個對您 有用,希望您能點贊,收藏加關注,謝謝啦!

如果您的朋友也需要,一起分享給他,咱們一起成長