Docker Registry搭建私有鏡像倉庫的實(shí)現(xiàn)方法
微服務(wù)的鏡像會上傳到Docker倉庫保存,常用的公網(wǎng)Docker倉庫有阿里云,網(wǎng)易云等,在企業(yè)局域網(wǎng)也可以搭建自己的Docker私有倉庫,本教程使用Docker提供的私有倉庫registry。
1.拉取私有倉庫鏡像
docker pull registry

2.創(chuàng)建啟動私有倉庫容器
docker run -dit -v /data/registry:/var/lib/registry -p 5000:5000 --restart=always --name docker-registry registry
參數(shù)說明
- -dit:在容器中打開一個偽終端進(jìn)行交互操作,并在后臺運(yùn)行
- -v:把宿主機(jī)的/data/registry目錄掛載到容器/var/lib/registry目錄(這個目錄是registry容器中存放鏡像文件的目錄),來實(shí)現(xiàn)數(shù)據(jù)的持久化
- -p:映射端口,訪問宿主機(jī)的5000端口就訪問到registry容器的服務(wù)了
- --restart=always:這是重啟的策略,假如這個容器異常退出會自動重啟容器
- --name docker-registry:創(chuàng)建容器命名為docker-registry,你可以隨便命名
- registry:pull下來的鏡像

上邊顯示 registry鏡像已經(jīng)創(chuàng)建,并且docker-registry容器已經(jīng)啟動成功。訪問:http://139.9.40.41:5000/v2/_catalog,響應(yīng)結(jié)果如下:
{"repositories":[]}
上邊的響應(yīng)結(jié)果說明在docker私有倉庫中還沒有鏡像。
默認(rèn)docker-registry只允許https提交鏡像,如下配置使docker-registry支持http,在/etc/docker下,創(chuàng)建daemon.json文件,寫入:
{
"insecure-registries": [ "139.9.40.41:5000"]
}
3.重啟docker
systemctl restart docker
4.鏡像上傳至私有倉庫
標(biāo)記此鏡像為私有倉庫的鏡像
docker tag docker.io/hello-world 139.9.40.41:5000/hello-world:v1
上傳標(biāo)記的鏡像
docker push 139.9.40.41:5000/hello-world:v1

列出所有鏡像
[root@2 docker]# curl http://139.9.40.41:5000/v2/_catalog
{"repositories":["hello-world"]}
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
基于CentOS8系統(tǒng)使用Docker搭建Gitlab的詳細(xì)教程
這篇文章主要介紹了基于CentOS8系統(tǒng)使用Docker搭建Gitlab教程,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2021-10-10
docker啟動springboot項(xiàng)目容器閃退的解決
本文主要介紹了docker啟動springboot項(xiàng)目容器閃退,大部分原因是啟動報錯,文中通過圖文示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2024-07-07
docker映射端口穿透內(nèi)置防火墻的實(shí)現(xiàn)
在使用Docker部署項(xiàng)目時,即使未開啟CentOS7的Firewalld防火墻,端口仍可被外網(wǎng)訪問,這是因?yàn)镈ocker在安裝后會接管iptables,并自動添加規(guī)則以放行指定端口,解決方法包括依賴外置防火墻放行端口、指定端口監(jiān)聽地址為本機(jī)、禁用Docker的iptables規(guī)則修改2024-10-10
淺談Docker consul的容器服務(wù)更新與發(fā)現(xiàn)
本文主要介紹了淺談Docker consul的容器服務(wù)更新與發(fā)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2023-06-06
替換docker容器中的一個文件的實(shí)現(xiàn)
在某些情況下,我們可能確實(shí)需要更新容器內(nèi)的文件,本文主要介紹了替換docker容器中的一個文件的實(shí)現(xiàn),具有一定的參考價值,感興趣的可以了解一下2024-06-06
docker安裝并運(yùn)行rabbitmq的實(shí)例代碼
在本篇文章里小編給大家整理了關(guān)于docker安裝并運(yùn)行rabbitmq的實(shí)例代碼以及相關(guān)知識點(diǎn),需要的朋友們學(xué)習(xí)下。2019-10-10
docker打包鏡像后EasyExcel報錯,dockerfile缺少字體的解決
解決Docker打包鏡像后EasyExcel報錯的問題:1. Dockerfile增加字體配置;2. 使用EasyExcel的write時添加"inMemory"參數(shù)為true,開啟內(nèi)存處理模式(不推薦,1W數(shù)據(jù)以內(nèi)可以考慮)2025-02-02

