docker和容器的区别?
其实容器的发展历史早于docker的。docker也不等同于容器,“容器”是一系列内核特性的统称。
2000年的时候,LXC容器发布,这是一种内核虚拟 化的技术,可以提供轻量级的虚拟化,以便隔离进程和资源,LXC是docker最初使用的具体内核功能的实现。
2013年的时候,Docker发布,组合LXC、Union File System和cgroups等Linux技术,创建了容器化标准。而且Docker 引入了ship(发布)的概念,构建了一套build-ship-run的软件开发流程,让软件开发、发布、运行变得更加简单。
比较内容 |
传统开发方式 |
容器开发方式 |
构建方式 |
maven打包 |
dockerfile |
交付方式 |
jar包或者war包 |
容器 |
一致性 |
弱,开发环境、测试环境、生产环境难以一致 |
强,不依赖于OS以及运行时环境 |
docker 应用了哪些内核技术
NameSpace隔离进程运行环境
NameSpace是Linux系统内核用来隔离内核资源的一种方式,通过NameSpace可以让进程只能看到与自己相关的资源。不同的NameSpace下的进程相互隔离,不能被感知到。NameSpace是对全局系统资源的一种封装隔离,使得在不同