
Docker包括三个基本概念:
镜像(image):Docker镜像就相当于一个root文件系统.比如官方镜像ubuntu:16.04就包含了完整的一套Ubuntu16.04最小系统的root文件系统
容器(Container):镜像和容器的关系,就像是面向对象程序设计中的类和实例一样,镜像是静态的定义,容器是镜像运行的实体.容器可以被创建,启动,停止,删除,暂停等.
仓库(Repository):仓库可看成一个代码控制中心,用来保存镜像.
Docker使用客户端-服务端(C/S)架构模式,使用远程API来管理和创建Docker容器.Docker容器通过Docker镜像来创建.
| 
 Docker 
 | 
 面向对象 
 | 
| 
 容器 
 | 
 对象 
 | 
| 
 镜像 
 | 
 类 
 | 

| 
 概念 
 | 
 说明 
 | 
| 
 镜像(image) 
 | 
 Docker镜像是用于创建Docker容器的模板,比如Ubuntu系统. 
 | 
| 
 容器(Container) 
 | 
 容器是独立运行的一个或一组应用,是镜像运行时的实体 
 | 
| 
 客户端(Client) 
 | 
 Docker客户端通过命令行或者其他工具使用Docker SDK与Docker的守护进程通信 
 | 
| 
 主机(Host) 
 | 
 一个物理机或者虚拟机的机器用于执行Docker守护进程和容器 
 | 
| 
 Docker Registry 
 | 
 Docker仓库用来保存镜像,可以理解为代码控制中的代码仓库. 
Docker Hub提供了庞大的镜像集合供使用. 
一个Docker Registry中可以包含多个仓库;每个仓库可以包含多个标签;每个标签对应一个镜像. 
通常,一个仓库会包含同一个软件不同版本的镜像,而标签就常用于对应软件的各个版本.我们可以通过<仓库>:<标签>的格式来指定具体是这个软件哪个版本的镜像.如果不给出标签,将以latest作为默认标签. 
 | 
| 
 Docker Machine 
 | 
 Docker Machine是一个简化Docker安装命令行工具,通过一个简单的命令行即可在相应的平台上安装Docker,比如:Vitrualbox,Digtal Ocean,Microsoft Azure. 
 |