如何在CentOS7.2服務(wù)器中搭建一個Docker私有鏡像倉庫?針對這個問題,這篇文章詳細(xì)介紹了相對應(yīng)的分析和解答,希望可以幫助更多想解決這個問題的小伙伴找到更簡單易行的方法。
成都創(chuàng)新互聯(lián)公司2013年成立,是專業(yè)互聯(lián)網(wǎng)技術(shù)服務(wù)公司,擁有項目成都網(wǎng)站建設(shè)、網(wǎng)站制作網(wǎng)站策劃,項目實施與項目整合能力。我們以讓每一個夢想脫穎而出為使命,1280元龍?zhí)蹲鼍W(wǎng)站,已為上家服務(wù),為龍?zhí)陡鞯仄髽I(yè)和個人服務(wù),聯(lián)系電話:028-86922220安裝docker
# yum -y install docker # systemctl start docker && systemctl enable docker
使用自簽名進(jìn)行安全認(rèn)證
創(chuàng)建存放證書和密鑰的certs目錄
# mkdir -p /docker/certs # chcon -Rt svirt_sandbox_file_t /docker/certs/
修改/etc/pki/tls/openssl.cnf配置文件
在該文件的[ v3_ca ]配置項中添加鏡像倉庫IP地址:
[ v3_ca ] # Extensions for a typical CA subjectAltName = IP:192.168.120.128
生成證書和密鑰
# cd /docker && openssl req \ -newkey rsa:4096 -nodes -sha256 -keyout certs/domain.key \ -x509 -days 365 -out certs/domain.crt # mkdir -p /etc/docker/certs.d/192.168.120.128:5000/ # cp certs/domain.crt /etc/docker/certs.d/192.168.120.128\:5000/ca.crt
創(chuàng)建存放鏡像文件的后端存儲
# mkdir -p /docker/data/private_registry # chcon -Rt svirt_sandbox_file_t /docker/data/private_registry
重新啟動docker daemon
# systemctl restart docker
啟動私有鏡像倉庫
# docker run \ -d \ --name private_registry --restart=always \ -u root \ -p 5000:5000 \ -v /docker/data/private_registry:/var/lib/registry \ -v /docker/certs:/certs \ -e REGISTRY_HTTP_TLS_CERTIFICATE=/certs/domain.crt \ -e REGISTRY_HTTP_TLS_KEY=/certs/domain.key \ registry:2
Docker加速器
該加速器可在pull鏡像較慢時配置實用。
復(fù)制代碼 代碼如下:
# curl -sSL https://get.daocloud.io/daotools/set_mirror.sh | sh -s http://c282dc88.m.daocloud.io
測試
本地測試
# docker pull ubuntu # docker tag ubuntu 192.168.120.128:5000/ubuntu # docker pull 192.168.120.128:5000/ubuntu Using default tag: latest Trying to pull repository 192.168.120.128:5000/ubuntu ... latest: Pulling from 192.168.120.128:5000/ubuntu Digest: sha256:382452f82a8bbd34443b2c727650af46aced0f94a44463c62a9848133ecb1aa8
遠(yuǎn)程測試
在另一臺主機(jī)上執(zhí)行以下命令進(jìn)行測試:
# mkdir -p /etc/docker/certs.d/192.168.120.128:5000/ # scp 192.168.120.128:/etc/docker/certs.d/192.168.120.128\:5000/ca.crt /etc/docker/certs.d/192.168.120.128\:5000/ # systemctl restart docker # docker pull 192.168.120.128:5000/ubuntu Using default tag: latest Trying to pull repository 192.168.120.128:5000/ubuntu ... latest: Pulling from 192.168.120.128:5000/ubuntu b6f892c0043b: Pull complete 55010f332b04: Pull complete 2955fb827c94: Pull complete 3deef3fcbd30: Pull complete cf9722e506aa: Pull complete Digest: sha256:382452f82a8bbd34443b2c727650af46aced0f94a44463c62a9848133ecb1aa8
關(guān)于如何在CentOS7.2服務(wù)器中搭建一個Docker私有鏡像倉庫問題的解答就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,如果你還有很多疑惑沒有解開,可以關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道了解更多相關(guān)知識。