1、Docker是什么
使用最广泛的开源容器引擎
一种操作系统级的虚拟化技术
依赖于Linux内核特性: Namespace(资源隔离)和Cgroups(资源限制)
一个简单的应用程序打包工具
2、Docker设计目标
提供简单的应用程序打包工具
开发人员和运维人员职责逻辑分离
多环境保持一致性
3、Docker基本组成
Docker Client:客户端
Ddocker Daemon:守护进程
Docker Images:镜像
Docker Container:容器
Docker Registry:镜像仓库
4、容器 VS 虚拟机
容器也是虚拟化,但是是“轻量级”的虚拟化。它的目的和虚拟机一样,都是为了创造隔离环境。
但是,虚拟机时操作系统级别的资源隔离,而容器本质上是进程级的资源隔离。
大家常听说的Docker,就是创建容器的工具,是应用容器引擎。
相比于传统的虚拟机,Docker的优势很明显,它启动速度快,是秒级,而且对资源的利用率很高(一台主机可以同时运行几千个Docker容器)。此外,它占的空间很小,虚拟机一般要几GB到几十GB,而容器只需要MB级甚至KB级。
5、Docker应用场景
应用程序打包和发布
应用程序隔离
持续集成
部署微服务
快速搭建测试环境
提供PaaS产品(平台即服务)