首先 Docker 是一个在 2013 年开源的应用程序并且是一个基于 go 语言编写是
一个开源的 PAAS 服务(Platform as a Service,平台即服务的缩写),go 语言是由
google 开发,docker 公司最早叫 dotCloud 后由于 Docker 开源后大受欢迎就将公
司改名为 Docker Inc,总部位于美国加州的旧金山,Docker 是基于 linux 内核实
现,Docker 最早采用 LXC 技术(LinuX Container 的简写,LXC 是 Linux 原生支持的
容器技术,可以提供轻量级的虚拟化,可以说 docker 就是基于 LXC 发展起来
的,提供 LXC 的高级封装,发展标准的配置方法),而虚拟化技术 KVM(Kernel-
based Virtual Machine) 基于模块实现,Docker 后改为自己研发并开源的 runc 技
术运行容器。
Docker 相比虚拟机的交付速度更快,资源消耗更低,Docker 采用客户端/服
务端架构,使用远程 API 来管理和创建 Docker 容器,其可以轻松的创建一个轻
量级的、可移植的、自给自足的容器,docker 的三大理念是 build(构建)、
ship(运输)、 run(运行),Docker 遵从 apache 2.0 协议,并通过(namespace 及
cgroup 等)来提供容器的资源隔离与安全保障等,所以 Docke 容器在运行时不
需要类似虚拟机(空运行的虚拟机占用物理机 6-8%性能)的额外资源开销,因
此可以大幅提高资源利用率,总而言之 Docker 是一种用了新颖方式实现的轻量级
虚拟机.类似于 VM 但是在原理和应用上和 VM 的差别还是很大的,并且 docker
的专业叫法是应用容器(Application Container)。
什么是docker
最新推荐文章于 2020-05-22 10:30:24 发布