Docker私有鏡像倉庫


搭建私有鏡像倉庫

搭建鏡像倉庫可以基於Docker官方提供的DockerRegistry來實現。

官網地址:https://hub.docker.com/_/registry

簡化版鏡像倉庫

Docker官方的Docker Registry是一個基礎版本的Docker鏡像倉庫,具備倉庫管理的完整功能,但是沒有圖形化界面。

搭建方式比較簡單,命令如下:

docker run -d \
    --restart=always \
    --name registry    \
    -p 5000:5000 \
    -v registry-data:/var/lib/registry \
    registry

命令中掛載了一個數據卷registry-data到容器內的/var/lib/registry 目錄,這是私有鏡像庫存放數據的目錄。

訪問http://YourIp:5000/v2/_catalog 可以查看當前私有鏡像服務中包含的鏡像

帶有圖形化界面版本

配置Docker信任地址

私服采用的是http協議,默認不被Docker信任,所以需要做一個配置

# 打開要修改的文件
vi /etc/docker/daemon.json
# 添加內容:
"insecure-registries":["http://192.168.223.128:8080"]
# 重加載
systemctl daemon-reload
# 重啟docker
systemctl restart docker

使用DockerCompose部署帶有圖象界面的DockerRegistry

創建目錄,並在其目錄下新建文件

mkdir registry-ui
touch docker-compose.yml

編輯docker-compose.yml

version: '3.0'
services:
  registry:
    image: registry
    volumes:
      - ./registry-data:/var/lib/registry ui: image: joxit/docker-registry-ui:static ports: - 8080:80 environment: - REGISTRY_TITLE=私有倉庫 - REGISTRY_URL=http://registry:5000 depends_on: - registry

docker compose 服務之間訪問使用服務名訪問

執行docker-compose

docker-compose up -d

鏡像推送、拉取

推送鏡像到私有鏡像服務必須先tag

tag本地鏡像

名稱前綴為私有倉庫的地址:192.168.223.128:8080/

docker tag docker-compose-demo_gateway:latest 192.168.223.128:8080/docker-compose-demo_gateway:1.0

推送鏡像

docker push 192.168.223.128:8080/docker-compose-demo_gateway:1.0

錯誤:
The push refers to repository [192.168.223.128:8080/docker-compose-demo_gateway]
Get "https://192.168.223.128:8080/v2/": http: server gave HTTP response to HTTPS client

原因:私服采用的是http協議,默認不被Docker信任,查看配置Docker信任地址是否配置正確

拉取鏡像

docker pull 192.168.223.128:8080/docker-compose-demo_gateway:1.0

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM