Docker Registry是用來管理docker鏡像的倉庫。Docker Hub是docker官方維護的Docker Registry。
一、Docker Hub上創建倉庫
註冊一個Docker Hub賬號,訪問https://hub.docker.com/,點擊Sign up for Docker Hub。我使用qq郵箱收不到docker發來的驗證郵件,因此註冊了一個gmail賬號用來接收docker驗證郵件。
點擊create repository創建一個倉庫。這裏我創建的倉庫名稱是java8。
二、將鏡像推送到Docker Hub
在安裝docker的機器上執行:
docker login
然後輸入在Docker Hub上註冊的dockerid和密碼
使用Dockerfile構建一個docker鏡像,可以參考博客https://blog.csdn.net/zhangcjsyl/article/details/103119146
由於之前創建鏡像沒有打標籤,標籤自動就是latest,這裏先給鏡像打上標籤
docker tag java8:latest docker.io/zhangc1214/java8:temp
這樣就多了一個docker.io/zhangc1214/java8:temp的鏡像,這裏倉庫名一定要和你再Docker Hub上創建的倉庫名稱一致,冒號後面加自定義的標籤。
然後推送到Docker Hub
docker push docker.io/zhangc1214/java8:temp
在Docker Hub上查看會發現有鏡像了。
三、搭建並推送鏡像到私有倉庫
搭建Docker Registry非常簡單,只需在安裝docker的機器上執行以下命令即可:
docker run -d -p 5000:5000 --name registry registry:2
然後給java8鏡像打上本地倉庫標籤
docker tag java8 localhost:5000/java8
推送到私有倉庫:
docker push localhost:5000/
這樣就推送成功了。如果要關閉私有倉庫,只需停止registry容器即可。