Docker

1. 安装

1.1 官方文档

2. 简介

2.1 核心概念

  • 镜像(Image)
  • 容器(Container)
  • 仓库(Repository)

2.2 镜像

类似于虚拟机镜像,实质为一个包含基本的操作系统环境和安装了用户所需软件的只读的模板。

镜像是创建Docker容器的基础。

2.3 容器

类似于一个轻量级的沙箱,Docker利用容器来运行和隔离应用。

以镜像为模板创建容器,容器可以启动、开始、停止、删除,且彼此相互隔离、互不可见的。

可以将容器理解为简易版的Linux系统环境(包括root用户权限、进程空间、用户空间和网络空间等)以及运行在其中的应用程序打包而成的盒子。

容器创建时,以镜像为基础,在其上添加一层可写层(layer),所有的操作都在可写层。因此当我们将容器提交为镜像时,会将可写层变成只读层打包到新镜像,如果每次都从容器制作镜像,会导致可写层累加,从而导致镜像体积膨胀。

2.4 仓库

类似于代码仓库,用于存放镜像。仓库注册服务器(Registry)下一般包含多个仓库。但很多时候两者会被混淆。

仓库中相同镜像下不同版本使用标签(tag)进行区分。Docker仓库可以分为公开仓库(Public)和私有仓库(Private)两种形式。用户可以进行pull和push镜像。

官方Docker仓库为DockerHub,用户也可以自己使用Registry、Harbor等搭建个人或企业自己还有的仓库注册服务器。