詳解使用阿里云鏡像倉庫構建國外Docker鏡像
使用阿里云鏡像倉庫下載國外鏡像
在日常使用 Docker 或 K8S 的過程中,經(jīng)常會需要到國外的網(wǎng)站中下載鏡像,但是有些網(wǎng)站在國內是無法訪問的。對于這個問題可以使用阿里云提供的鏡像倉庫進行下載,然后 pull 到本地并修改 tag 來實現(xiàn)。
例如在使用 K8S 部署 Istio 時,需要下載 gcr.io/istio-testing/install-cni:1.5-dev 鏡像,可以根據(jù)如下步驟在阿里云中進行構建和下載:
一、配置 Github
首先登錄 Github 中創(chuàng)建一個用于構建鏡像的 repository,例如命名為 image-build
在電腦本地中創(chuàng)建一個文件夾,例如命名為 dockerImage
進入 dockerImage 目錄,將 Github 中的 repository clone 到本地
https://github.com/CoderX-Aaron/image-build.git
clone 完成后,進入 image-build 目錄,創(chuàng)建一個名為 install-cni 的 Dockerfile 文件,內容如下:
FROM gcr.io/istio-testing/install-cni:1.5-dev
將剛才創(chuàng)建的 Dockerfile 文件提交到 git 中并指定分支名稱為 master (根據(jù) Github 中創(chuàng)建 repository 時默認的第一個分支名稱來修改)
git add install-cni git commit -m "Create Dockerfile to build install-cni image" git branch -M master
將 git 中的內容 push 到 Github 上面:
git push -u origin master
二、配置阿里云
在阿里云中配置鏡像倉庫和構建的步驟如下:
登錄阿里云控制臺,進入容器鏡像服務
在左側選項卡中點擊代碼源,綁定 Github 賬號
綁定完成后,在左側選項卡中點擊鏡像倉庫,開始創(chuàng)建命名空間、倉庫名稱和摘要信息,點擊下一步
在代碼源中選擇 Github,命名空間選擇 CoderX-Aaron (也就是 Github 的 username),倉庫選擇 image-build。在下面的構建設置中勾選海外機器構建,然后點擊創(chuàng)建鏡像倉庫
創(chuàng)建倉庫完成后,點擊管理倉庫,并在左側選項卡中選擇構建。首先在構建規(guī)則中設置新的構建規(guī)則,需要注意 Dockerfile 目錄的路徑和文件名稱,要和 Github 中保持一致

創(chuàng)建構建規(guī)則后,點擊對應規(guī)則后面的 “立即構建” 按鈕,即可開始鏡像的構建。
三、拉取鏡像
鏡像構建成功后,即可在 “鏡像版本” 選項卡中看到構建好的鏡像,接下來將鏡像 pull 到本地,步驟如下:
首先在本地機器中命令行中登錄阿里云鏡像倉庫,用于登錄的用戶名為阿里云賬號全名,密碼為開通服務時設置的密碼。
docker login --username=username registry.cn-hangzhou.aliyuncs.com
從 Registry 中拉取鏡像到本地
docker pull registry.cn-hangzhou.aliyuncs.com/ops-docker/istio:v1
修改鏡像的 tag
docker tag registry.cn-hangzhou.aliyuncs.com/ops-docker/istio:v1 gcr.io/istio-testing/install-cni:1.5-dev
這樣即可完成對 install-cni 鏡像的下載,將 K8S 中的拉取鏡像策略修改為 IfNotPresent 或者 Never即可。
四、將鏡像 Push 到阿里云
將本地鏡像 Push 到阿里云,首先需要將本地鏡像的 tag 進行修改:
docker tag [ImageId] registry.cn-hangzhou.aliyuncs.com/ops-docker/istio:[鏡像版本號]
接下來 Push 鏡像:
docker push registry.cn-hangzhou.aliyuncs.com/ops-docker/istio:[鏡像版本號]
到此這篇關于詳解使用阿里云鏡像倉庫構建國外Docker鏡像的文章就介紹到這了,更多相關阿里云構建國外Docker鏡像內容請搜索本站以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持本站!
版權聲明:本站文章來源標注為YINGSOO的內容版權均為本站所有,歡迎引用、轉載,請保持原文完整并注明來源及原文鏈接。禁止復制或仿造本網(wǎng)站,禁止在非maisonbaluchon.cn所屬的服務器上建立鏡像,否則將依法追究法律責任。本站部分內容來源于網(wǎng)友推薦、互聯(lián)網(wǎng)收集整理而來,僅供學習參考,不代表本站立場,如有內容涉嫌侵權,請聯(lián)系alex-e#qq.com處理。
關注官方微信