天天看點

Docker Registry私有庫搭建

作者:清風微拂塵

1.下載下傳Docker Registry鏡像

docker pull registry           

2.運作私有庫Registry

docker run -d –p 端口:端口 -v 主機目錄:容器内目錄 --privileged=true Registrey鏡像名

倉庫預設建立在容器的/var/lib/registry目錄下,即:上傳到registry私有倉庫的檔案就存儲到/var/lib/registry目錄下。

docker run -d -p 5000:5000 -v /tmp/registry_data:/var/lib/registry --privileged=true registry           
Docker Registry私有庫搭建

3. 測試案例(運作ubuntu容器,安裝ifconfig指令,送出到私有庫)

1) 運作ubuntu容器

docker run -it ubuntu /bin/bash           

2) 更新包管理工具

apt-get update           

3) 安裝net-tools

apt-get install net-tools           

4) 測試ifconfig指令

ifconfig           

5) 退出容器

ctrl + p + q           

6)檢視運作的容器

docker ps           
Docker Registry私有庫搭建

7)送出到本地庫

docker commit -m="描述" -a="作者" a82ec8018d7d ubuntu_with_ifconfig:1.0           

注:a82ec8018d7d為第6步紅色框中的容器ID

Docker Registry私有庫搭建

8)驗證私有庫上有哪些鏡像

curl -XGET http://localhost:5000/v2/_catalog           
Docker Registry私有庫搭建

9)将新鏡像ubuntu_with_ifconfig:1.0修改符合私服規範的Tag

docker tag 鏡像名:Tag Host:Port/鏡像名:Tag

docker tag ubuntu_with_ifconfig:1.0 localhost:5000/ubuntu_with_ifconfig:1.0           
Docker Registry私有庫搭建

10)修改配置檔案讓其支援http

vim /etc/docker/daemon.json
{
  "registry-mirrors": ["https://f******x.mirror.aliyuncs.com"],
  "insecure-registries":["localhost:5000"]
}           

注:registry-mirrors為阿裡鏡像加速器URL位址,根據自己賬号的URL來配置

11)如果配置不生效,則重新開機docker

systemctl restart docker           

12)重新運作私有庫

docker restart 3749db24a30f           

注:3749db24a30f為registry容器ID

13)推送鏡像到私有庫

docker push localhost:5000/ubuntu_with_ifconfig:1.0           

14)再次驗證私有庫上有哪些鏡像

curl -XGET http://localhost:5000/v2/_catalog           
Docker Registry私有庫搭建

15)從私有庫上下載下傳鏡像

  • 先删除本地鏡像
docker rmi -f 5d4fc84bf33d           
Docker Registry私有庫搭建
  • 從私有庫下載下傳鏡像
docker pull localhost:5000/ubuntu_with_ifconfig:1.0           
Docker Registry私有庫搭建