這篇文章給大家分享的是有關(guān)如何在Linux系統(tǒng)上部署docker私有倉(cāng)庫(kù)的內(nèi)容。小編覺得挺實(shí)用的,因此分享給大家做個(gè)參考,一起跟隨小編過來看看吧。
為青海等地區(qū)用戶提供了全套網(wǎng)頁(yè)設(shè)計(jì)制作服務(wù),及青海網(wǎng)站建設(shè)行業(yè)解決方案。主營(yíng)業(yè)務(wù)為成都做網(wǎng)站、網(wǎng)站建設(shè)、外貿(mào)營(yíng)銷網(wǎng)站建設(shè)、青海網(wǎng)站設(shè)計(jì),以傳統(tǒng)方式定制建設(shè)網(wǎng)站,并提供域名空間備案等一條龍服務(wù),秉承以專業(yè)、用心的態(tài)度為用戶提供真誠(chéng)的服務(wù)。我們深信只要達(dá)到每一位用戶的要求,就會(huì)得到認(rèn)可,從而選擇與我們長(zhǎng)期合作。這樣,我們也可以走得更遠(yuǎn)!修改配置http訪問
[root@test01 ~]# cat /etc/docker/daemon.json {"registry-mirrors": ["https://registry.docker-cn.com"],"insecure-registries":["192.168.1.30:5000"]}
如果不這樣配置,結(jié)果如下。這個(gè)問題可能是由于客戶端采用https,docker registry未采用https服務(wù)所致。一種處理方式是把客戶對(duì)地址“192.168.1.30:5000”請(qǐng)求改為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
使用容器運(yùn)行docker-registry
[root@test01 ~]# docker run -d -p 5000:5000 --privileged=true -v /opt/data/registry:/tmp/registry --name='docker-registry' registry
參數(shù)說明:
-v /opt/data/registry:/tmp/registry :默認(rèn)情況下,會(huì)將倉(cāng)庫(kù)存放于容器內(nèi)的/tmp/registry目錄下,指定本地目錄掛載到容器 –privileged=true :CentOS7中的安全模塊selinux把權(quán)限禁掉了,參數(shù)給容器加特權(quán),不加上傳鏡像會(huì)報(bào)權(quán)限錯(cuò)誤(OSError: [Errno 13] Permission denied: ‘/tmp/registry/repositories/liibrary’)或者(Received unexpected HTTP status: 500 Internal Server Error)錯(cuò)誤
上傳鏡像
[root@test01 ~]# docker images REPOSITORY TAG IMAGE ID CREATED SIZE docker.io/wordpress latest 346b1443b020 30 hours ago 407 MB [root@test01 ~]# docker push 192.168.1.30:5000/wordpress The 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 ~]#
根據(jù)提示,我們知道需要修改一下tag才能上傳
[root@test01 ~]# docker tag docker.io/wordpress 192.168.1.30:5000/wordpress [root@test01 ~]# docker images REPOSITORY 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/wordpress The push refers to a repository [192.168.1.30:5000/wordpress] 3d7c1bb6ce9f: Pushed
從私有倉(cāng)庫(kù)中下載
[root@test01 ~]# docker pull 192.168.1.30:5000/wordpress
客戶端永久配置使用私有倉(cāng)庫(kù)
加入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 runs OPTIONS='--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/docker fi
感謝各位的閱讀!關(guān)于“如何在Linux系統(tǒng)上部署docker私有倉(cāng)庫(kù)”這篇文章就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,讓大家可以學(xué)到更多知識(shí),如果覺得文章不錯(cuò),可以把它分享出去讓更多的人看到吧!