1. 程式人生 > >搭建docker映象私有倉庫碰到的問題

搭建docker映象私有倉庫碰到的問題

之前我有過一篇部落格是專門講如何搭建docker映象私有倉庫的。《搭建docker映象私有倉庫》
最近將docker升級到1.12版本後又搭建了私有倉庫。當映象倉庫的容器執行起來之後,我在其它節點上想要拉取該倉庫中的映象,遇到了如下報錯:
這裡寫圖片描述
該報錯的原因在於:
docker從1.3版本以後對Registry的訪問都是用的https。這是基於安全的考慮的。而我的私有倉庫容器使用http協議。所以造成了這樣的報錯。
修復辦法很簡單,將該節點的docker daemon對此私有倉庫的訪問協議由https改為http即可。
使用命令vim /etc/docker/daemon.json
這個daemon.json

中儲存了docker daemon的一些配置引數,使用json寫成的。
我們只需要在這裡加上一句
"insecure-registries":["registry.com:5000"]
這句話的意思是此docker daemon以後在訪問registry.com:5000時使用http協議而不是https協議。
如果沒有daemon.json檔案,那麼就新建該檔案且在其中寫入上述的那句話。
當然,registry.com是我的映象倉庫容器所在的節點IP。你要改為你自己的IP才行。
接下來輸入命令systemctl daemon-reload,該命令過載daemon配置。
輸入命令systemctl restart docker
重啟docker。
如果這時候重啟失敗並報錯
這裡寫圖片描述
那麼就執行命令rm -rf /var/run/docker.sock/
將docker.sock目錄刪除再執行systemctl restart docker
完成之後就發現我們能在該節點上拉取此映象倉庫的映象了。