Docker倉庫用於鏡像的存儲,是鏡像分發、部署的關鍵。docker
Docker官方提供了公有倉庫Docker Hub,國內也有一些公有倉庫,咱們也能夠本身搭建私有的Docker倉庫。安全
Docker默認使用官方的公有倉庫Docker Hub,搜索、下載鏡像無需帳號,上傳鏡像則須要帳號認證。bash
相關命令服務器
# 登陸Docker Hub
docker login
# 上傳鏡像
docker push IMAGE:VERSION
# 搜索鏡像
docker search IMAGE
# 下載鏡像
docker pull IMAGE
# 從Docker 中國官方鏡像加速服務器下載鏡像
docker pull registry.docker-cn.com/library/openjdk:11-jre
複製代碼
某些場景下,因爲網絡、安全、網速等緣由,公有倉庫並不合適,咱們須要構建本身的私有倉庫。Docker官方提供了docker-registry組件,方便咱們快速構建私有鏡像。須要注意的是docker-registry如今已經更新到v2版本,而且使用了新的項目名稱**docker-distribution
**。網絡
Docker官方提供了docker-registry的鏡像,直接使用該鏡像是最簡單的方式。使用如下命令,Docker會自動從Docker Hub拉取docker-registry的鏡像,而後啓動docker-registry服務,docker-registry默認監聽5000端口。curl
docker run -d -p 5000:5000 --restart always --name registry registry:2
複製代碼
若是須要設置環境變量,能夠使用-e
設置參數。工具
EPEL中已經包含docker-registry的包,經過yum工具能夠直接安裝。url
yum install -y docker-distribution
複製代碼
啓動服務、查看服務狀態spa
systemctl start docker-distribution && systemctl status docker-distribution
複製代碼
To be continued...rest
查看Registry中全部鏡像信息(如下示例中,假定私有倉庫的ip地址爲192.168.100.101)
curl http://192.168.100.101:5000/v2/_catalog
複製代碼
上傳鏡像
docker push 192.168.100.101:5000/<image>:latest
複製代碼
從私有倉庫下載鏡像
docker pull 192.168.100.101:5000/<image>:latest
複製代碼
從私有倉庫pull鏡像並啓動
docker run -it 192.168.100.101:5000/<image>:latest
複製代碼