溫馨提示×

溫馨提示×

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

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Docker搭建私有鏡像倉庫的方法

發(fā)布時間:2020-08-31 11:59:25 來源:腳本之家 閱讀:177 作者:kongxx 欄目:服務器

和Mavan的管理一樣,Dockers不僅提供了一個中央倉庫,同時也允許我們使用registry搭建本地私有倉庫。

使用私有倉庫有許多優(yōu)點:

  1. 節(jié)省網絡帶寬,針對于每個鏡像不用每個人都去中央倉庫上面去下載,只需要從私有倉庫中下載即可;
  2. 提供鏡像資源利用,針對于公司內部使用的鏡像,推送到本地的私有倉庫中,以供公司內部相關人員使用。

現在Docker用處越來越多了,所以今天就想著搭建一個私有鏡像倉庫來維護內部我們自己的鏡像。

環(huán)境

  1. CentOS 7.x
  2. Docker 1.12.6

安裝 docker-distribution

$ sudo yum install -y docker-distribution

$ sudo systemctl enable docker-distribution

$ sudo systemctl start docker-distribution

使用

獲取測試鏡像

首先從Docker中央倉庫獲取一個用來測試的容器鏡像,這里就使用busybox來作為測試鏡像。

$ sudo docker pull busybox

$ sudo docker images
REPOSITORY          TAG         IMAGE ID      CREATED       SIZE
docker.io/busybox       latest       9d7e6df8e5ca    8 hours ago     1.129 MB

標記并上傳鏡像私有鏡像

我們這里不對busybox做任何修改,只是換個名字作為私有鏡像。

$ sudo docker tag busybox:latest localhost:5000/kongxx/mybusybox:latest
$ sudo docker push localhost:5000/kongxx/mybusybox:latest

上傳完成后可以使用下面命令查看一下

$ curl http://192.168.0.109:5000/v2/kongxx/busybox/tags/list
{"name":"kongxx/busybox","tags":["latest"]}

同時我們查看一下本地的鏡像列表

$ sudo docker images
REPOSITORY            TAG         IMAGE ID      CREATED       SIZE
localhost:5000/kongxx/mybusybox  latest       9d7e6df8e5ca    8 hours ago     1.129 MB
docker.io/busybox         latest       9d7e6df8e5ca    8 hours ago     1.129 MB

測試鏡像倉庫

為了能訪問私有倉庫(因為這里是自己測試,所以沒有使用https),還需要修改一下Docker配置文件

編輯 /etc/sysconfig/docker 文件,將其中的 OPTIONS 參數加上

--insecure-registry 192.168.0.109:5000

然后重新啟動Docker服務

$ sudo systemctl restart docker

為了測試,我們先把原來本地已經有的鏡像刪除

$ sudo docker rmi docker.io/busybox
$ sudo docker rmi localhost:5000/kongxx/mybusybox

然后重新獲取鏡像,如下:

$ sudo docker pull 192.168.0.109:5000/kongxx/mybusybox
Using default tag: latest
Trying to pull repository 192.168.0.109:5000/kongxx/mybusybox ...
latest: Pulling from 192.168.0.109:5000/kongxx/mybusybox
414e5515492a: Pull complete
Digest: sha256:fbcd856ee1f73340c0b7862201b9c045571d1e357797e8c4c0d02a0d21992b80

從輸出可以看到已經可以從自己的倉庫下載鏡像了。

其他

最后說一下,如果要查詢私有倉庫里有哪些鏡像,我還沒有找到啥好方法可以一次全部查到,但是可以通過下面的組合命令來查詢。

首先查詢私有倉庫上有那些鏡像名

$ curl -XGET http://192.168.0.109:5000/v2/_catalog
{"repositories":["kongxx/mybusybox","mandy/mybusybox"]}

然后使用下面的命令查看鏡像有那些版本

# curl -XGET http://192.168.0.109:5000/v2/<image_name>/tags/list
$ curl -XGET http://192.168.0.109:5000/v2/kongxx/mybusybox/tags/list
{"name":"kongxx/mybusybox","tags":["latest"]}

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持億速云。

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI