零、什么是 Docker
- 是一个基于 GO 语言开发的开源 应用容器;
- 开发者可以打包应用和相关包,到一个 轻量级 、 可移植 的 容器 中,并且可以发布到 任何机器 ,实现 虚拟化;
- 完全使用 沙箱机制 ,而且 性能开销很低。
一、Docker 核心
Docker 的核心有三个,分别是:镜像 、 容器 和 仓库。
- 镜像:
类似于虚拟机镜像,是一个只读的模板。镜像可以包含基本操作系统环境和用户所需的软件(比如 MySQL).
注:镜像是创建 Docker 容器的基础。
- 容器:
类似于轻量级的沙箱,利用容器运行和隔离应用,容器之间相互隔离,互不可见。
注:镜像是制度的,容器从镜像启动时,会在最上层创建一个可写层。
- 仓库:
与 GitHub 类似,是存放镜像的地方。
注:仓库与仓库注册服务器的区别:
- 仓库注册服务器是存放仓库的地方,一个仓库注册服务器包含多个仓库;
- 每个仓库集中存放某一类的镜像,通过标签区分每个仓库。
仓库与仓库注册服务器的关系如下: