Docker搭建私有倉庫、查看私有倉庫鏡像

私有倉庫的搭建

1.拉取私有倉庫的鏡像

docker pull registry

拉取docker私有倉庫鏡像

2.建立倉庫容器並運行

docker run -d -v /home/registory:/var/lib/registry -p 5000:5000 --restart=always --privileged=true --name registry registry:latest
爲何是 /var/lib/registry/ 目錄?

倉庫默認存放鏡像等信息在容器的 /var/lib/registry/docker 目錄下,能夠進入該目錄查看已上傳鏡像信息,即便私有倉庫的容器被誤刪,再次建立此容器,以前的鏡像依然存在。
在這裏插入圖片描述html

docker ps 能夠看到倉庫容器正在運行。進入到/home下,能夠看到registory文件夾

在這裏插入圖片描述

3.以nginx鏡像爲例,將其推送到私有倉庫

(1)拉取nginx,若是拉取鏡像超時,請配置docker鏡像加速nginx

docker pull nginx

(2)將nginx從新tag,注意:「/」前邊是你的倉庫所在服務器的ip+映射的端口web

docker tag nginx:latest 192.168.58.140:5000/nginxtest:latest

(3)將其推送到私有倉庫docker

docker push 192.168.58.140:5000/nginxtest:latest

在這裏插入圖片描述
(4)會出現報錯
在這裏插入圖片描述
緣由是docker私有倉庫服務器,默認是https協議,因此咱們須要進行修改不使用httpsjson

vi /etc/docker/daemon.json			//若是沒有此文件,請建立

添加下面這段代碼服務器

"insecure-registries":["192.168.58.140:5000"]

在這裏插入圖片描述

重啓docker服務:curl

systemctl daemon-reload
systemctl restart docker

(5)再次將鏡像推送到私有倉庫,便可推送成功svg

docker push 192.168.58.140:5000/nginxtest:latest

在這裏插入圖片描述
查看倉庫鏡像,查看推送成功~~~~
在這裏插入圖片描述測試

4.測試:

(1)刪除本地存在的192.168.58.140:5000/nginxtest:latest鏡像url

docker rmi 192.168.58.140:5000/nginxtest:latest

看到鏡像已經被刪除
在這裏插入圖片描述

(2)拉取鏡像

docker pull 192.168.58.140:5000/nginxtest:latest

在這裏插入圖片描述
(3)鏡像拉取成功~~~~

參考文章:https://www.cnblogs.com/subendong/p/9029495.html

5.查看私有倉庫鏡像

1)查看私有倉庫執行此命令:
curl -XGET http://ip:端口/v2/_catalog

在這裏插入圖片描述

2)獲取某個鏡像的標籤列表:
curl -XGEThttp://192.168.1.8:5000/v2/私有倉庫鏡像名稱/tags/list

在這裏插入圖片描述

6.結束