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
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
7)送出到本地庫
docker commit -m="描述" -a="作者" a82ec8018d7d ubuntu_with_ifconfig:1.0
注:a82ec8018d7d為第6步紅色框中的容器ID
8)驗證私有庫上有哪些鏡像
curl -XGET http://localhost:5000/v2/_catalog
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
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
15)從私有庫上下載下傳鏡像
- 先删除本地鏡像
docker rmi -f 5d4fc84bf33d
- 從私有庫下載下傳鏡像
docker pull localhost:5000/ubuntu_with_ifconfig:1.0