開發中若是使用docker鏡像,由於網速問題,使用dockerhub不是很方便,因而想在公司內部搭建私有的Registry。git
若是使用apt-get install docker安裝ubuntu自帶的docker,可能版本比較低,這樣有可能在docker pull時會遇到:github
Could not reach any registry endpoint 這樣的錯誤。docker
解決方案就是安裝docker提供的版本:ubuntu
#apt-get install -y curl服務器
#curl -sSL https://get.docker.com/ | sudo shcurl
#git clone https://github.com/docker/docker-registry.gitui
#mkdir -p /opt/data/registryurl
#cd docker-registryspa
#docker buildip
#docker run -d -e SETTINGS_FLAVOR=dev -e STORAGE_PATH=/tmp/registry -v /opt/data/registry:/tmp/registry -p 5000:5000 registry
#docker push 127.0.0.1:5000/ubuntu:12.04
報錯:
The push refers to a repository [127.0.0.1:5000/utuntu] (len: 1)
Repository does not exist: 127.0.0.1:5000/utuntu
執行
#docker tag ubuntu:12.04 127.0.0.1:5000/ubuntu:12.04
再上傳
#docker push 127.0.0.1:5000/ubuntu:12.04,上傳成功。
經過命令:
#curl -X GET http://127.0.0.1:5000/v1/search
查看Registry上的鏡像,返回:
{"num_results": 1, "query": "", "results": [{"description": "", "name": "library/ubuntu"}]}
上面的步驟只實現了在本地上傳鏡像,若是須要在其餘機器上上傳鏡像,可能還須要其餘的步驟。