docker-registry使用筆記

在國內docker-hub是確定用不了的,不解釋:sweat:。git

因此最好仍是建一個私有的docker-registry,存儲一些經常使用的images方便隨時pull。github

相關連接

github:https://github.com/dotcloud/docker-registry

api:http://docs.docker.com/reference/api/registry_api/

安裝docker-registry

官方直接給出了一個建立container的命令,在裝有docker的機器上運行docker run -d -p 5000:5000 registry
這個貌似要下載不少東西,大概500M左右,免去了手工安裝的過程,很方便。docker

安裝安成以後直接訪問 http://ip:5000 就能夠看到api

「docker-registry server (dev) (v0.7.3)」服務器

說明安裝成功了,更多安裝細節,或者配置請參考https://github.com/dotcloud/docker-registrydom

push到私有docker-registry

首先解釋一下docker中鏡像的命名規則,如:registry.domain.com/mycom/base:latest,這是一個完整的image名稱,下面說下各部分的做用spa

  1. registry.domain.com: image所在服務器地,若是是官方的hub部分忽略
  2. mycom:namespace,被稱爲命名空間,或者說成是你鏡像的一個分類
  3. base:這個是鏡像的具體名字
  4. latest:這是此image的版本號,固然也多是其它的,如1.1之類的

而後是如何push到私有docker-registry,直接上命令:code

docker tag b750fe79269d 127.0.0.1:5000/mycom/baseserver

b750fe79269d是現有image一個id,你能夠從docker hub中pull,或者本身構建image。後面的部分參考上面解釋。
這一步的工做主要是給image指定一個服務器地址,讓docker知道往哪裏push。
而後就是push,命令:ip

docker push 127.0.0.1:5000/mycom/base

而後等待docker push完成就能夠從私有docker-registry中pull或者run了,如:

docker run 127.0.0.1:5000/mycom/base

這裏直接使用本機ip,正式使用最好指定一個二級域名,這樣ip變了之後也不影響使用。

私有docker-registry的使用

其實http://docs.docker.com/reference/api/registry_api/這裏有docker-registry的api,
只是沒有如何獲取全部image列表的方法,後來查了下,可經過http://127.0.0.1:5000/v1/search查出

若是須要的話創建一個頁面,可供查詢全部可用的image,同事們就能夠隨時從你的docker-registry中pull他想要的image,這個速度固然是不言而喻的了,更重要的是不用擔憂會失敗:+1:。

相關文章
相關標籤/搜索