- 安裝Docker Registry
# 下載鏡像
docker pull registry
# 安裝
docker run -d \
-p 5000:5000 \
-v /opt/data/registry:/var/lib/registry \
registry
- 鏡像上傳私有服務(wù)
# 給鏡像打tag
docker tag redis:6.0.2 127.0.0.1:5000/redis:6.0.2
# 鏡像push
docker push 127.0.0.1:5000/redis:6.0.2
- 客戶端從私服下載鏡像
# 配置私服地址, 配置的內(nèi)容格式: "insecure-registries": ["私服IP地址:5000"] 如下圖
vim /etc/docker/daemon.json
# 重啟docker
systemctl restart docker
# 拉取鏡像
docker pull 私服IP地址:5000/redis:6.0.2
image.png
- 鏡像的刪除
# 查看鏡像的詳情 (其中 redis為鏡像名稱达吞, 6.0.2是鏡像版本)拴魄,復(fù)制出 sha256:xxxxx 稳强,刪除時(shí)需要用到
curl --header "Accept: application/vnd.docker.distribution.manifest.v2+json" -I -X GET http://127.0.0.1:5000/v2/redis/manifests/6.0.2
# 刪除鏡像(其中 redis為鏡像名稱),看結(jié)果, 如果出現(xiàn) 405 任内,需要配置刪除權(quán)限,見下文
curl -I -X DELETE http://127.0.0.1:5000/v2/redis/manifests/sha256:ab54d0eafe20eeb825ab7b5a58d317cae5a4388c3acf1d91f9c33985b20ff273
- 問題 - 刪除鏡像時(shí)融柬,報(bào)405
# 1 進(jìn)入registry容器內(nèi)部
docker exec -it 7271d90d9211 sh
# 2 修改配置文件死嗦, 在 storage 下增加 delete: enabled:true , 如下圖
vi /etc/docker/registry/config.yml
# 3 重啟 registry容器
docker restart 7271d90d9211
image.png