您好,登錄后才能下訂單哦!
本篇內容介紹了“Linux中如何搭建Docker私有倉庫”的有關知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠學有所成!
使用Docker私有倉庫可以幫助我們節省網絡帶寬,針對于每個鏡像不用每個人都去中央倉庫上面去下載,只需要從私有倉庫中下載即可,還可以提供鏡像資源利用,針對于公司內部使用的鏡像,推送到本地的私有倉庫中,以供公司內部相關人員使用。
[root@test01 ~]# cat /etc/docker/daemon.json{"registry-mirrors": ["https://registry.docker-cn.com"],"insecure-registries":["192.168.1.30:5000"]}
如果不這樣配置,結果如下。這個問題可能是由于客戶端采用https,docker registry未采用https服務所致。一種處理方式是把客戶對地址“192.168.1.30:5000”請求改為http
[root@test01 ~]# docker push 192.168.1.30:5000/centosThe push refers to a repository [192.168.1.30:5000/centos] Get https://192.168.1.30:5000/v1/_ping: http: server gave HTTP response to HTTPS client
[root@test01 ~]# docker run -d -p 5000:5000 --privileged=true -v /opt/data/registry:/tmp/registry --name='docker-registry' registry
參數說明:
-v /opt/data/registry:/tmp/registry :默認情況下,會將倉庫存放于容器內的/tmp/registry目錄下,指定本地目錄掛載到容器 –privileged=true :CentOS7中的安全模塊selinux把權限禁掉了,參數給容器加特權,不加上傳鏡像會報權限錯誤(OSError: [Errno 13] Permission denied: ‘/tmp/registry/repositories/liibrary’)或者(Received unexpected HTTP status: 500 Internal Server Error)錯誤
[root@test01 ~]# docker imagesREPOSITORY TAG IMAGE ID CREATED SIZE docker.io/wordpress latest 346b1443b020 30 hours ago 407 MB [root@test01 ~]# docker push 192.168.1.30:5000/wordpressThe push refers to a repository [192.168.1.30:5000/wordpress] An image does not exist locally with the tag: 192.168.1.30:5000/wordpress [root@test01 ~]#
根據提示,我們知道需要修改一下tag才能上傳
[root@test01 ~]# docker tag docker.io/wordpress 192.168.1.30:5000/wordpress[root@test01 ~]# docker imagesREPOSITORY TAG IMAGE ID CREATED SIZE 192.168.1.30:5000/wordpress latest 346b1443b020 30 hours ago 407 MB docker.io/wordpress latest 346b1443b020 30 hours ago 407 MB [root@test01 ~]# docker push 192.168.1.30:5000/wordpressThe push refers to a repository [192.168.1.30:5000/wordpress] 3d7c1bb6ce9f: Pushed
[root@test01 ~]# docker pull 192.168.1.30:5000/wordpress
加入ADD_REGISTRY='--add-registry 192.168.1.30:5000'[root@test01 ~]# cat /etc/sysconfig/docker# /etc/sysconfig/docker# Modify these options if you want to change the way the docker daemon runsOPTIONS='--selinux-enabled --log-driver=journald --signature-verification=false -H unix:///var/run/docker.sock -H 0.0.0.0:2376'ADD_REGISTRY='--add-registry 192.168.1.30:5000'if [ -z "${DOCKER_CERT_PATH}" ]; then DOCKER_CERT_PATH=/etc/dockerfi
“Linux中如何搭建Docker私有倉庫”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識可以關注億速云網站,小編將為大家輸出更多高質量的實用文章!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。