目前上傳本地鏡像到網上有多種途徑,一個是上傳到hub上,一個是阿里雲鏡像倉庫,還要其他服務器。
上傳到hub上實在是太慢了,我的服務器用的是阿里雲,所以選擇上傳到阿里雲鏡像倉庫中。
前提條件:linux里有要上傳的鏡像,有阿里雲的鏡像倉庫。
1.登錄阿里雲docker registry:
$ sudo docker login --username=afangxin registry.cn-hangzhou.aliyuncs.com
afangxin為阿里雲鏡像倉庫的用戶名。
登錄registry的用戶名是您的阿里雲賬號全名,密碼是您開通namespace時設置的密碼。
你可以在鏡像管理首頁點擊右上角按鈕修改docker login密碼。
2.從registry中拉取鏡像:
$ sudo docker pull registry.cn-hangzhou.aliyuncs.com/testfangxin/fangxin:[鏡像版本號].。
3。將鏡像推送到registry:
$ sudo docker login --username=afangxin registry.cn-hangzhou.aliyuncs.com
$ sudo docker tag [ImageId] registry.cn-hangzhou.aliyuncs.com/testfangxin/fangxin:[鏡像版本號]
$ sudo docker push registry.cn-hangzhou.aliyuncs.com/testfangxin/fangxin:[鏡像版本號]
其中[ImageId],[鏡像版本號]請你根據自己的鏡像信息進行填寫。
sample:
使用docker tag重命名鏡像,並將它通過私網ip推送至registry:
$ sudo docker images
REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE
registry.aliyuncs.com/acs/agent 0.7-dfb6816 37bb9c63c8b2 7 days ago 37.89 MB
$ sudo docker tag 37bb9c63c8b2 registry.cn-hangzhou.aliyuncs.com/acs/agent:0.7-dfb6816
通過docker images 找到您的imageId 並對於改imageId重命名鏡像domain到registry內網地址。
$ sudo docker push registry.cn-hangzhou.aliyuncs.com/acs/agent
從內網push鏡像,速度將大大提升,並且將不會損耗您的公網流量。注意,如果您申請的機器是在vpc網絡的,請使用registry-cn-hangzhou-vpc.aliyuncs.com的域名前綴進行推送。