Docker Registry私有倉(cāng)庫(kù)簡(jiǎn)單搭建過(guò)程
一、概述
本文將詳細(xì)介紹如何在本地搭建一個(gè) Docker 私有 Registry 倉(cāng)庫(kù),并實(shí)現(xiàn)鏡像的上傳和管理。通過(guò)私有倉(cāng)庫(kù),可以方便地在本地網(wǎng)絡(luò)中存儲(chǔ)和分發(fā) Docker 鏡像,提高開(kāi)發(fā)和部署效率。
二、搭建步驟
(一)下載 Docker Registry 鏡像
命令:
docker pull registry
解析:
docker pull是 Docker 的命令,用于從 Docker Hub 下載指定的鏡像。registry是 Docker 官方提供的 Registry 鏡像,用于搭建私有倉(cāng)庫(kù)。- 默認(rèn)情況下,
docker pull會(huì)下載最新版本的鏡像(latest標(biāo)簽)。
(二)啟動(dòng) Docker Registry 容器
命令:
docker run -d -p 5000:5000 --restart=always --name registry registry
解析:
-d:表示以守護(hù)進(jìn)程模式運(yùn)行容器(后臺(tái)運(yùn)行)。-p 5000:5000:將容器的 5000 端口映射到宿主機(jī)的 5000 端口,用于訪(fǎng)問(wèn)私有倉(cāng)庫(kù)。--restart=always:設(shè)置容器在退出后自動(dòng)重啟,確保倉(cāng)庫(kù)服務(wù)始終可用。--name registry:為容器指定名稱(chēng)registry,便于后續(xù)管理。registry:指定使用的鏡像名稱(chēng)(即之前下載的registry鏡像)。
驗(yàn)證容器是否啟動(dòng)成功:
docker ps
如果看到名為 registry 的容器正在運(yùn)行,并且端口映射正確,說(shuō)明啟動(dòng)成功。

(三)配置 Docker 客戶(hù)端以信任私有倉(cāng)庫(kù)
由于私有倉(cāng)庫(kù)默認(rèn)使用 HTTPS協(xié)議,Docker 客戶(hù)端需要配置為信任該倉(cāng)庫(kù)。
編輯 /etc/docker/daemon.json 文件:
vim /etc/docker/daemon.json
添加以下內(nèi)容:
{
"insecure-registries": ["192.168.65.131:5000"]
}insecure-registries:指定不安全的倉(cāng)庫(kù)地址,允許 Docker 客戶(hù)端通過(guò) HTTP 協(xié)議訪(fǎng)問(wèn)該地址。
重啟 Docker 服務(wù):
systemctl restart docker
重啟 Docker 服務(wù)后,配置生效。
(四)上傳鏡像到私有倉(cāng)庫(kù)
標(biāo)記鏡像:
docker tag nginx:latest 192.168.65131:5000/nginx:latest
docker tag:用于為鏡像重新標(biāo)記一個(gè)新的名稱(chēng)和標(biāo)簽。nginx:latest:本地已有的鏡像名稱(chēng)和標(biāo)簽。nginx:5000/nginx:latest:目標(biāo)倉(cāng)庫(kù)地址和鏡像名稱(chēng)。
推送鏡像到私有倉(cāng)庫(kù):
docker push 192.168.65.131:5000/nginx:latest
docker push:將標(biāo)記后的鏡像推送到指定的倉(cāng)庫(kù)地址。- 如果推送成功,會(huì)顯示鏡像層的上傳進(jìn)度和最終的摘要信息。

(五)驗(yàn)證鏡像是否上傳成功
通過(guò) API 查看倉(cāng)庫(kù)中的鏡像:
curl 192.168.65.131:5000/v2/_catalog
如果返回類(lèi)似以下內(nèi)容,說(shuō)明鏡像已成功上傳:

三、常見(jiàn)問(wèn)題及解決方法
(一)無(wú)法連接到私有倉(cāng)庫(kù)
問(wèn)題描述:
在推送或拉取鏡像時(shí),可能會(huì)遇到以下錯(cuò)誤:
Get "https://192.168.65.131:5000/v2/": dial tcp 192.168.65.131:5000: connect: connection refused
解決方法:
- 確保
/etc/docker/daemon.json文件中正確配置了insecure-registries。 - 確保 Docker 服務(wù)已重啟。
- 確保倉(cāng)庫(kù)地址正確,且防火墻允許訪(fǎng)問(wèn) 5000 端口。
(二)網(wǎng)絡(luò)問(wèn)題導(dǎo)致無(wú)法解析地址
問(wèn)題描述: 如果嘗試訪(fǎng)問(wèn) http://192.168.65.131:5000 或 https://192.168.65.131:5000/v2/ 時(shí),可能會(huì)遇到解析失敗的問(wèn)題。
解決方法:
- 檢查倉(cāng)庫(kù)地址是否正確,確保 IP 地址和端口無(wú)誤。
- 確保網(wǎng)絡(luò)連接正常,可以嘗試
ping或curl測(cè)試連通性。 - 如果問(wèn)題仍然存在,可能是網(wǎng)絡(luò)配置或防火墻限制,建議檢查網(wǎng)絡(luò)設(shè)置或聯(lián)系網(wǎng)絡(luò)管理員。
總結(jié)
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
- docker-registry私有倉(cāng)庫(kù)鏡像之查看與刪除實(shí)現(xiàn)方式
- docker?registry?私有倉(cāng)庫(kù)的搭建過(guò)程
- Docker私有倉(cāng)庫(kù)Registry部署的實(shí)現(xiàn)
- Docker搭建私有倉(cāng)庫(kù)(registry與Harbor)的實(shí)現(xiàn)
- docker 查詢(xún)或獲取私有倉(cāng)庫(kù)(registry)中的鏡像的方法
- Docker 搭建私有倉(cāng)庫(kù)(registry、harbor)
- 詳解Ubuntu Docker Registry 搭建私有倉(cāng)庫(kù)
相關(guān)文章
教你使用Portainer管理多臺(tái)Docker容器環(huán)境的方法
這篇文章主要介紹了Portainer管理多臺(tái)Docker容器環(huán)境,本文給大家介紹的非常詳細(xì),包括環(huán)境準(zhǔn)備及管理docker的詳細(xì)過(guò)程,需要的朋友可以參考下2021-11-11
mac系統(tǒng)使用docker搭建nacos(親測(cè)有效)
本文主要介紹了mac系統(tǒng)使用docker搭建nacos,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2025-08-08
docker之如何設(shè)置日志文件大小及個(gè)數(shù)
這篇文章主要介紹了docker之如何設(shè)置日志文件大小及個(gè)數(shù)問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-05-05
關(guān)于Docker加載鏡像連接超時(shí)的快速解決辦法
文章指導(dǎo)如何檢查WSL和Docker狀態(tài),解決網(wǎng)絡(luò)連接超時(shí)問(wèn)題,包括驗(yàn)證DNS解析、調(diào)整網(wǎng)絡(luò)設(shè)置及重啟服務(wù),確保Docker能正常拉取鏡像,本文重點(diǎn)給大家介紹Docker加載鏡像連接超時(shí)的解決辦法,感興趣的朋友跟隨小編一起看看吧2025-08-08
使用Docker registry鏡像創(chuàng)建私有倉(cāng)庫(kù)的方法
本篇文章主要介紹了使用Docker registry鏡像創(chuàng)建私有倉(cāng)庫(kù)的方法,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下。2017-04-04

