使用阿里雲免費構建docker私有倉庫
阿里雲提供了免費的docker倉庫,地址: ofollow,noindex">http://cr.console.aliyun.com/
阿里雲提供了免費的code倉庫,地址: https://code.aliyun.com/
1.上傳本地映象到阿里雲
以下操作在阿里雲的docker倉庫裡
1. 建立名稱空間

image
2. 建立映象倉庫

image
此處選擇“本地倉庫”

image
3. 上傳映象
以下操作在linux作業系統上:
a.登入阿里雲docker registry:
$docker login [email protected] registry.cn-hangzhou.aliyuncs.com # 登入registry的使用者名稱是您的阿里雲賬號全名,密碼是您開通namespace時設定的密碼。 #你可以在映象管理首頁點選右上角按鈕修改docker login密碼。
b.從registry中拉取映象:
$ docker pull registry.cn-hangzhou.aliyuncs.com/mykernel/test1:[映象版本號]
c. 將映象推送到registry:
$ docker login [email protected] registry.cn-hangzhou.aliyuncs.com $ docker tag [ImageId] registry.cn-hangzhou.aliyuncs.com/mykernel/test1:[映象版本號] $ docker push registry.cn-hangzhou.aliyuncs.com/mykernel/test1:[映象版本號] ## 其中[ImageId]為你本地映象的名稱或者映象ID號,[映象版本號]為你自己設定的版本號碼。
4. 演示
使用docker tag 重新命名映象,並將它通過私網ip推送至registry:
$ sudo docker images REPOSITORYTAGIMAGE IDCREATEDVIRTUAL SIZE registry.aliyuncs.com/acs/agent0.8-test1133168aac67 days ago37.89 MB $ docker tag 1133168aac6 dregistry.cn-hangzhou.aliyuncs.com/mykernel/test1:0.8-test ##通過docker images 找到您的imageId 並對於改imageId重新命名映象domain到registry內網地址。 $ docker push registry.cn-hangzhou.aliyuncs.com/mykernel/test1 ## 從內網push映象,速度將大大提升,並且將不會損耗您的公網流量。 ## 注意,如果您申請的機器是在vpc網路的,請使用registry-cn-hangzhou-vpc.aliyuncs.com的域名字首進行推送。
下載映象
$ docker pull registry.cn-hangzhou.aliyuncs.com/mykernel/test1:0.8-test
2.使用阿里雲程式碼倉庫構建
1. 上傳dockerfile檔案
在1中的圖中我們發現,此處選擇的是阿里code,所以我們需要在1之前完成這一步,將相關的Dockerfile及其相關檔案至阿里雲程式碼倉庫。
倉庫地址: https://code.aliyun.com/
新建專案

image

image
上傳dockerfile檔案(本地linux上)
git config --global user.name "2580259468" git config --global user.email "[email protected]" #建立新版本庫 git clone https://code.aliyun.com/mykernel/my-first-p.git cd my-first-p ## 複製你需要上傳的檔案到my-first-p目錄下 touch README.md git add * git commit -m "add 描述" git push -u origin master ## 輸入你登入程式碼倉庫的使用者名稱和密碼,完成上次。
2. 構建映象
在阿里雲映象倉庫中,其他前期操作都一樣,僅僅在建立映象倉庫時候,如下選擇:

image
點選“構建”選單:

image
點選“立即構建”按鈕:

image
若構建失敗,可以檢視“日誌”進行除錯。
當然可以選擇啟動程式碼倉庫中的程式碼進行構建映象。
博主一般不寫dockerfile了,一般使用阿里雲的映象倉庫就是做一個docker官方映象的中轉。dockerfile 中只需要寫一行程式碼就行了。
個人小站: http://www.mykernel.cn