Docker自學紀實(六)搭建docker私有倉庫
阿新 • • 發佈:2018-12-20
docker的映象倉庫分兩種:一種是從官方公有倉庫拉取;還有就是自己搭建私有倉庫。
官方的映象倉庫是面對整個應用市場的;私有倉庫一般用於公司內部,就是公司專案自身所需的映象。
搭建私有倉庫有什麼好處?
私有倉庫,是在公司內網伺服器上搭建的,不受外網影響,響應時間快,而且方便整理。
OK,下面開始。
準備環境:centos7;docker;
搭建registry 私有倉庫,上傳httpd到私有倉庫,下載驗證。
1.首先從公共倉庫拉取registry映象和httpd映象到本地,並執行。
1 拉取映象:docker pull registry 2 執行:docker run -d -v /opt/registry:/var/lib/registry --name registry --restart=always -p 5000:5000 --privileged=true registry
-v 宿主機資料卷:容器資料卷。 --restart=always:容器總是開啟,防止意外中斷。-p 宿主機埠:容器埠。--privileged=true授予許可權:
注意:啟動registry容器時,如果不加--privileged=true引數,則上傳映象到私有倉庫時可能出現問題:
2.給要上傳的映象打tag標籤,上傳。
1 新增標籤:docker tag httpd 192.168.1.200:5000/apache:v1 2 刪除標籤:docker rmi httpd 192.168.1.200:5000/apache:v1 3 檢視:docker images 4 上傳:docker push 192.168.1.200:5000/apache:v1
注意:上傳時可能會遇到問題導致上傳失敗,如:
解決方案:
修改daemon.json檔案sudo vi /etc/docker/daemon.json
新增:{ "insecure-registries":["你私有倉庫的主機IP:5000"]}
3.檢視私有倉庫。
1 curl http://192.168.1.200:5000/v2/_catalog 2 curl http://192.168.1.200:5000/v2/apache/tags/list
[ ]裡面的是倉庫裡的映象
4.從另一臺機器拉取並啟動apache容器。
注意:另一臺機器也需要修改/etc/docker/daemon.json,新增:{ "insecure-registries":["你私有倉庫的主機IP:5000"]}