仓库(Repository)是集中存放镜像的地方。一个容易与之混淆的概念是注册服务器(Registry)。实际上注册服务器是存放仓库的具体服务器,每一个服务器上能够有多个仓库,而每一个仓库下面有多个镜像。从这方面来讲,仓库能够被认为是一个具体的项目或目录。例如对于仓库地址dl.docker-pool.com/ubuntu来讲,dl.dockerpool.com是注册服务器地址,ubuntu是仓库名。仓库又分公共仓库和私有仓库,在本章笔者将分别展现如何使用DockerHub官方仓库进行登陆、下载等基本操做,以及使用DockerPool社区提供的仓库下载镜像;最后还将介绍建立和使用私有仓库的基本操做。docker
Docker Hubshell
目前Docker官方维护了一个公共仓库https://hub.docker.com,其中已经包括15000多个的镜像。ubuntu
登录centos
docker login 运来用来完成注册登录,注册成功后,本地用户目录的.dockercfg中将保存用户的认证信息服务器
根据是否为官方提供,可将这些镜像资源分为两类。一种是相似centos这样的基础镜像,称为基础或根镜像。这些镜像是由Docker公司建立、验证、支持、提供。这样的镜像每每使用单个单词做为名字。还有一种类型,好比tianon/centos镜像,它是由Docker-Hub的用户tianon建立并维护的,带有用户名称为前缀,代表是某用户的某仓库。能够经过用户名称前缀user_name/来指定使用某个用户提供的镜像,好比tianon用户的镜像前缀为tianon/。网站
自动建立ui
自动建立(Automated Builds)功能对于须要常常升级镜像内程序来讲十分方便。有时候,用户建立了镜像,安装了某个软件,若是软件发布新版本则须要手动更新镜像。能够在Docker Hub网站上登录帐号后设置。spa
使用registry镜像建立私有仓库code
能够经过官方提供的registry镜像来简单搭建一套本地私有仓库:资源
sudo docker run -d -p 5000:5000 registry
默认状况下会将仓库建立在容器的/tmp/registry目录下,能够经过-v参数将镜像翁家存放在指定的本地路径上,如:
sudo docker run -d -p 5000:5000 -v /opt/data/registry:/tmp/registry registry
以后就能够经过tag命令以及push|pull命令在本地上传下载镜像了