Docker學習(三)-簡單的私有DockerHub搭建

Docker Hub

目前Docker官方維護了一個公共倉庫https://hub.docker.com, 其中已經包括100000+個的鏡像。大部分需求都可以通過在 Docker hub中直接下載鏡像來實現,

註冊登錄

可以在 免費註冊一個Docker賬號。在命令行執行docker login輸入用戶名及密碼來完成在命令行界面登記Docker Hub。你可以通過docker logout退出登錄。

docker login

 

拉取鏡像

可以通過docker search命令來查找官方倉庫中的鏡像,並利用docker pull命令來將它下載到本地。

 

推送鏡像

用戶也可以在登錄后通過docker push命令來將自己的鏡像推送到Docker Hub。

docker pull tomcat

 docker images

修改本地鏡像的名字為賬號名/鏡像名

上傳鏡像到公共倉庫

docker push woxpp/tomcat-test:latest

登錄界面查看

docker pull woxpp/tomcat-test

 

私有倉庫

有時候使用Docker Hub這樣的公共倉庫可能不方便,用戶可以創建一個本地倉庫供私人使用。比如,基於公司內部項目構建的鏡像。
docker-registry是官方提供的工具,可以用於構建私有的鏡像倉庫。

安裝運行docker-registry

可以通過獲取官方registry鏡像來運行。默認情況下,倉庫會被創建在容器的/var/lib/registry目錄下。可以通過-v參數來將鏡像文件存放在本地的指定路徑。

docker run --name registry -d  -p 5000:5000 --restart=always  -v /opt/registry:/var/lib/registry registry
docker ps -a

測試是否成功

使用docker tag將session-web:latest這個鏡像標記為192.168.50.24:5000/session-web:latest格式為docker tag IMAGE:TAG/]REPOSITORY[:TAG]

docker tag docker.io/tomcat 192.168.50.24:5000/tomcat-2:latest

使用docker push上傳標記的鏡像

docker push 192.168.50.24:5000/tomcat-2:latest

驗證上傳的鏡像

 

 

 先刪除已有鏡像,再嘗試從私有倉庫中下載這個鏡像。

docker images
 docker rmi 192.168.50.24:5000/tomcat-2
docker pull 192.168.50.24:5000/tomcat-2 

 

注意事項

The push refers to a repository [192.168.50.24:5000/consul]
Get https://192.168.50.24:5000/v1/_ping: http: server gave HTTP response to HTTPS client

可以用下面方式解決

修改客戶端/etc/docker/daemon.json中寫入如下內容

{
    "registry-mirror":[
        "http://hub-mirror.c.163.com"
    ],
    "insecure-registries":[
        "192.168.50.24:5000"
    ]
}

重新啟動docker后再試試
service docker restart

 

 

本站聲明:網站內容來源於博客園,如有侵權,請聯繫我們,我們將及時處理

【其他文章推薦】

※為什麼 USB CONNECTOR 是電子產業重要的元件?

網頁設計一頭霧水??該從何著手呢? 找到專業技術的網頁設計公司,幫您輕鬆架站!

※想要讓你的商品成為最夯、最多人討論的話題?網頁設計公司讓你強力曝光

※想知道最厲害的台北網頁設計公司推薦台中網頁設計公司推薦專業設計師”嚨底家”!!