Docker搭建私有倉庫的實現(xiàn)步驟
背景介紹
Docker registry是存儲Docker image的倉庫,運行push、pull、 search 時,是通過Docker daemon與docker registry通信。
Docker Hub(Docker埠,內(nèi)有大量存儲庫或叫倉庫)是Docker提供的一項服務,用于查找和與您的團隊共享容器鏡像。它是世界上最大的容器鏡像存儲庫,擁有一系列內(nèi)容源,包括容器社區(qū)開發(fā)人員、開放源代碼項目和獨立軟件供應商(ISV)在容器中構建和分發(fā)代碼。
使用私有倉庫有許多優(yōu)點:
1)節(jié)省網(wǎng)絡帶寬,針對于每個鏡像不用每個人都去中央倉庫上面去下載,只需要從私有倉庫中下載即可;
2)提供鏡像資源利用,針對于公司內(nèi)部使用的鏡像,推送到本地的私有倉庫中,以供公司內(nèi)部相關人員使用。
因為dockerHub公共倉庫是外網(wǎng)的,所以訪問就特別慢,所以一般公司都會搭建私人的鏡像倉庫來保存鏡像。一臺服務上用docker開啟一個私有倉庫的鏡像,后續(xù)其他的docket服務器都將鏡像保存在這個私有的倉庫
1 設置私有鏡像倉庫
# 下載鏡像 docker pull registry # 啟動鏡像 docker run -itd -v /home/wuzhibin/docker/registry:/var/lib/registry -p 5000:5000 --restart=always --name registry registry:latest -itd:在容器中打開一個偽終端進行交互操作,并在后臺運行 -v:把宿主機的/home/wuzhibin/docker/registry目錄綁定到容器/var/lib/registry來實現(xiàn)數(shù)據(jù)的持久化; -p:映射端口;訪問宿主機的5000端口就訪問到registry容器的服務了 --restart=always: 這是重啟的策略,在容器退出時總是重啟容器 --name registry: 創(chuàng)建容器命名為registry
拉起官方鏡像,在一臺搭建鏡像倉庫的容器,并將容器的數(shù)據(jù)盤映射本地數(shù)據(jù)持久化,最終的目的是將設置為私有的鏡像倉庫保存鏡像。
2 添加鏡像倉庫
# 在其他的服務上設置的鏡像倉庫地址為私倉地址 vim /etc/docker/daemon.json { "insecure-registries": ["192.168.1.200:5000"], "registry-mirrors": ["https://zh7ton3p.mirror.aliyuncs.com"] } systemctl daemon-reload systemctl restart docker # insecure-registries 為上一步開啟的私有倉庫地址 # registry-mirrors 為阿里云鏡像加速地址 # 修改docker配置之后一定要重新啟動docker # 推送鏡像到私倉 # 拉取nginx 測試鏡像 docker pull nginx # 打上私倉標簽,如果想推送到私倉必須打上私倉的標簽,應該為默認是推送到公共倉庫的。 docker tag mginx:latest 192.168.1.200:500/nginx:v1 # 查看鏡像名 docker images # 推送私倉,192.168.1.200:5000/nginx:v1為上一步打上鏡像名的鏡像 docker push 192.168.1.200:5000/nginx:v1 # 查看私倉鏡像倉庫 curl http://192.168.1.200:5000/v2/_catalog # 結果為{"repositories":["nginx"]}表面 # 查看私倉的鏡像版本 curl http://192.168.118.16:5000/v2/ubuntu/tags/list
在其他的服務上設置的鏡像倉庫地址為私倉地址就可以通過私倉拉起分發(fā)布鏡像了, 拉取私倉的鏡像不僅僅要設置鏡像倉庫的地址,另外鏡像上也要打上私倉的標簽,不能默認會從公共倉庫拉起和發(fā)布
3 拉私倉的鏡像
# 拉取私倉的鏡像, 其他的服務器也需要和上一步一樣添加docker配置中添加私倉地址 # 不加私倉地址會默認從公共倉去拉起, docker pull 192.168.1.200:5000/nginx:v1 # 查看拉起的鏡像 docker images
到此這篇關于Docker搭建私有倉庫的文章就介紹到這了,更多相關Docker搭建私有倉庫內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
docker中使用mongodb數(shù)據(jù)庫詳解(在局域網(wǎng)訪問)
這篇文章主要給大家介紹了在docker中使用mongodb數(shù)據(jù)庫,在局域網(wǎng)訪問的相關資料,文中將步驟介紹的非常詳細,對大家具有一定的參考學習價值,需要的朋友們下面來一起看看吧。2017-06-06Docker的文件系統(tǒng)映射:主機與容器間目錄的雙向映射詳解
通過Docker的目錄映射功能,實現(xiàn)主機與容器間的數(shù)據(jù)共享與持久化存儲,使用-v或--mount參數(shù)在運行時設置主機與容器目錄映射,或通過DockerCompose配置文件實現(xiàn)自動化,此功能提升數(shù)據(jù)管理靈活性和效率2024-11-11linux中無make命令的問題(make: *** 沒有指明目標并且找不到 makefile及make命令安裝方法)
這篇文章主要介紹了linux中無make命令的問題(make: *** 沒有指明目標并且找不到 makefile及make命令安裝方法),本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下2020-08-08docker部署Vaultwarden密碼共享管理系統(tǒng)的實現(xiàn)(圖文)
Vaultwarden是一個開源的密碼管理器,它提供了類似于Bitwarden的功能,允許用戶安全地存儲和管理密碼、敏感數(shù)據(jù)和身份信息,本文主要介紹了docker部署Vaultwarden密碼共享管理系統(tǒng)的實現(xiàn),感興趣的可以了解一下2023-10-10