基於 registry 搭建 Docker 私有鏡像倉庫

  • 2021 年 5 月 12 日
  • 筆記

今天主要介紹使用 registry 來搭建 Docker私有鏡像倉庫,方便在公司內部項目中使用,registry 也是 Docker 官方提供的一個鏡像,操作也很簡單。

dockerhub: //registry.hub.docker.com/_/registry

安裝命令

docker run -p 5000:5000 -d -v /opt/registry:/opt/registry --restart always --name myregistry registry

參數介紹:

  • -p 容器的端口映射,這裡綁定 5000
  • -d 後台運行容器
  • -v 掛載主機的/opt/registry目錄到容器的/opt/registry目錄,保證容器刪除後,鏡像文件不會丟失
  • –restart=always 容器異常關閉後,能夠自動重啟
  • –name=myregistry 啟動的容器名稱

運行命令後,首先會從docker hub 下載鏡像,然後會運行容器

通過瀏覽器或者命令訪問 localhost:5000/v2/_catalog, 出現下面的空的倉庫,說明本地以已經搭建成功了

訪問 localhost:5000/v2/nginx/tags/list , 可以查看鏡像的列表

推送,拉取鏡像

首先我們從 docker hub 上面,拉取一個 nginx 的鏡像到本地,然後把這個鏡像推送到我們搭建的私有倉庫。

docker pull nginx

使用 tag 命令修改本地的nginx 鏡像

docker tag nginx:latest localhost:5000/nginx:latest

通過push命令推送到私有倉庫

docker push localhost:5000/nginx:latest

然後使用瀏覽器或者命令訪問 localhost:5000/v2/_catalog, 現在可以看到已經推送的nginx鏡像。

拉取私有倉庫的鏡像的話,可以使用下面的命令

docker pull localhost:5000/nginx:latest

整個搭建過程就到這裡了,下篇文章會介紹使用企業級的Registry Harbor來搭建私有鏡像倉庫。

最後歡迎掃碼關注我們的公眾號 【全球技術精選】,專註國外優秀博客的翻譯和開源項目分享。