溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

如何在CentOS7.2服務(wù)器中搭建一個(gè)Docker私有鏡像倉(cāng)庫(kù)

發(fā)布時(shí)間:2021-04-07 17:31:17 來(lái)源:億速云 閱讀:141 作者:Leah 欄目:服務(wù)器

如何在CentOS7.2服務(wù)器中搭建一個(gè)Docker私有鏡像倉(cāng)庫(kù)?針對(duì)這個(gè)問(wèn)題,這篇文章詳細(xì)介紹了相對(duì)應(yīng)的分析和解答,希望可以幫助更多想解決這個(gè)問(wèn)題的小伙伴找到更簡(jiǎn)單易行的方法。

安裝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 ]配置項(xiàng)中添加鏡像倉(cāng)庫(kù)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)建存放鏡像文件的后端存儲(chǔ)

# mkdir -p /docker/data/private_registry
# chcon -Rt svirt_sandbox_file_t /docker/data/private_registry

重新啟動(dòng)docker daemon

# systemctl restart docker

啟動(dòng)私有鏡像倉(cāng)庫(kù)

# 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鏡像較慢時(shí)配置實(shí)用。

復(fù)制代碼 代碼如下:

# curl -sSL https://get.daocloud.io/daotools/set_mirror.sh | sh -s http://c282dc88.m.daocloud.io

測(cè)試

本地測(cè)試

# 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)程測(cè)試

在另一臺(tái)主機(jī)上執(zhí)行以下命令進(jìn)行測(cè)試:

# 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ù)器中搭建一個(gè)Docker私有鏡像倉(cāng)庫(kù)問(wèn)題的解答就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,如果你還有很多疑惑沒(méi)有解開,可以關(guān)注億速云行業(yè)資訊頻道了解更多相關(guān)知識(shí)。

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI