1、什么是Docker
Docker使用Google公司推出的Go语言进行开发实现的,基于Linux内核、Union FS(联合文件)等技术,对进程进行封装隔离,属于操作系统层面的虚拟化技术
传统虚拟机技术是虚拟出一套硬件后,在其上运行一个完整操作系统,在该系统上再运行所需应用进程;而容器内的应用进程直接运行于宿主的内核,容器内没有自己的内核,而且也没有进行硬件虚拟
2、为什么要用Docker
总结:启动快、空间小、性能高、一致的运行环境、方便迁移、维护和扩展
3、Docker基本概念
- 镜像
Docker 镜像 是一个特殊的文件系统,除了提供容器运行时所需的程序、库、资源、配置等文件外,还包含了一些为运行时准备的一些配置参数(如匿名卷、环境变量、用户等)
- 容器
镜像(Image
)和容器(Container
)的关系,就像是面向对象程序设计中的 类
和 实例
一样,镜像是静态的定义,容器是镜像运行时的实体,容器的实质是进程,但与直接在宿主执行的进程不同,容器进程运行于属于自己的独立的命名空间
- 仓库
镜像构建完成后,可以很容易的在当前宿主机上运行,但是,如果需要在其它服务器上使用这个镜像,我们就需要一个集中的存储、分发镜像的服务,仓库就是这样的服务
Docker中的容器是相互隔离的