Docker 官方版本只能在 X64 Linux 且内核版本为 3.0 的机器正常运行
核心概念:
镜像(image ):
Docker 镜像就是一个只读的模板,一个镜像可以创建多个容器,可以将软件、项目、系统等打包为镜像让Docker 进行运行。通俗点镜像说类似于常见的 ISO 镜像文件
可以通过编写 Dockerfile 文件创建自定义镜像
容器(container):
Docker 利用容器来运行应用。容器是从镜像创建的运行实例,它可以被启动、开始、停止、删除。每个容器都是相互隔离的、保证安全的平台
容器可以通过 docker commit 打包为镜像,同一个 image 可以创建多个 container
仓库:
下载镜像的地方,Docker 官方仓库为 dockerHub,仓库分为 公开仓库 和 私有仓库 两种形式。通俗点说类似于 Maven 仓库
运行基本流程:
1、用户是使用 Docker Client与 Docker Daemon 建立通信,并发送请求给后者
2、Docker Daemon 作为 Docker 架构中的主体部分,首先提供Docker Server的功能使其可以接受 Docker Client的请求
3、Docker Engine 执行 Docker 内部的一系列工作,每-项工作都是以一个Job的形式的存在
4、Job 的运行过程中,当需要容器镜像时,则从 Docker Registry 中下载镜像,并通过镜像管理驱动 Graph driver 将下载镜像以 Graph 的形式存储
5、当需要为 Docker 创建网络环境时,通过网络管理驱动 Network driver 创建并配置 Docker 容器网络环境
6、当需要限制 Docker 容器运行资源或执行用户指令等操作时,则通过Execdriver来完成
7、Libcontainer 是一项独立的容器管理包,Network driver以及Exec driver都是通过 Libcontainer 来实现具体对容器进行的操作
