1、docker简介
- 提到"Docker"时,可能是指如下3种概念之一。
- Docker公司。
- Docker的容器运行时和编排引擎。
- Docker是一种运行于Linux和Windows上的软件,用于创建、管理和编排容器。
- Docker开源项目(Moby) 。
- Docker是在GitHub上开发的Moby开源项目的一部分。
1、Docker公司
- Docker公司位于旧金山,是整个Moby开源项目的维护者。Docker公司还提供包含支持服务的商业版本的Docker。
2、Docker引擎
- 多数技术人员在谈到Docker时,主要是指Docker引擎。
- Docker引擎是用于运行和编排容器的基础设施工具。Docker引擎是运行容器的核心。
- Docker引擎可以类比为VMware的ESXi,ESXi是运行虚拟机的核心管理程序。
- Docker引擎可以从Docker网站下载,也可以基于GitHub上的源码进行构建。无论是开源版本还是商业版本,都有Linux和Windows版本。
- Docker引擎主要有两个版本:企业版(EE)和社区版。
3、Docker开源项目(Moby)
- Moby项目的目标是基于开源的方式,发展成为Docker上游,并将Docker拆分为更多的模块化组件。
- Moby项目托管于GitHub的Moby代码库,包括子项目和工具列表。
- 核心的Docker引擎项目位于GitHub的moby/moby,但是引擎中的代码正持续被拆分和模块化。
- 简单的说,2017之后docker就是企业版的docker,Moby就是社区版的docker。
4、容器生态
- 许多Docker内置的组件都可以替换为第三方的组件。
- 网络技术栈就是,一个很好的例子。Docker核心产品内置有网络解决方案。但是网络技术栈是可插拔的,这意味着Docker内置的网络方案可以被替换为第三方的方案。许多人都会这样使用。
5、开放容器计划
- OCI(The Open Container Initiative,开放容器计划)是一个旨在对容器基础架构中的基础组件进行标准化的管理委员会。
- OCI已经发布了两份规范(标准):镜像规范和运行时规范。
2、