吉布提

注册

 

发新话题 回复该主题

终于有人把Docker讲清楚了 [复制链接]

1#
青少年白癜风爱心公益 http://baijiahao.baidu.com/s?id=1700353303318890248&wfr=spider&for=pc

一、简介

1、了解Docker的前生LXC

LXC为LinuxContainer的简写。可以提供轻量级的虚拟化,以便隔离进程和资源,而且不需要提供指令解释机制以及全虚拟化的其他复杂性。相当于C++中的NameSpace。容器有效地将由单个操作系统管理的资源划分到孤立的组中,以更好地在孤立的组之间平衡有冲突的资源使用需求。

与传统虚拟化技术相比,它的优势在于:

(1)与宿主机使用同一个内核,性能损耗小;

(2)不需要指令级模拟;

(3)不需要即时(Just-in-time)编译;

(4)容器可以在CPU核心的本地运行指令,不需要任何专门的解释机制;

(5)避免了准虚拟化和系统调用替换中的复杂性;

(6)轻量级隔离,在隔离的同时还提供共享机制,以实现容器与宿主机的资源共享。

总结:LinuxContainer是一种轻量级的虚拟化的手段。

LinuxContainer提供了在单一可控主机节点上支持多个相互隔离的servercontainer同时执行的机制。LinuxContainer有点像chroot,提供了一个拥有自己进程和网络空间的虚拟环境,但又有别于虚拟机,因为lxc是一种操作系统层次上的资源的虚拟化。

2、LXC与docker什么关系?

docker并不是LXC替代品,docker底层使用了LXC来实现,LXC将linux进程沙盒化,使得进程之间相互隔离,并且能够控制各进程的资源分配。

在LXC的基础之上,docker提供了一系列更强大的功能。

3、什么是docker

docker是一个开源的应用容器引擎,基于go语言开发并遵循了apache2.0协议开源。

docker可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中,然后发布到任何流行的linux服务器,也可以实现虚拟化。

容器是完全使用沙箱机制,相互之间不会有任何接口(类iphone的app),并且容器开销极其低。

4、docker官方文档

分享 转发
TOP
发新话题 回复该主题