lxc和docker之间的区别是什么
时间:2021-12-29 10:24
区别:1、docker将应用的所有配置打包到一个容器中,具有可移植性,LXC仅仅实现了进程沙盒化,并不能在不同机器上进行移植;2、docker针对应用的API、用户接口、设计原理及文档上面部署做了优化,而LXC仅关注容器并没有过多的优化。 本教程操作环境:linux7.3系统、docker-1.13.1版、Dell G3电脑。 lxc和docker之间的区别是什么 Docker并不是LXC的替代品,Docker的底层就是使用了LXC来实现的。LXC将Linux进程沙盒化,使得进程之间相互隔离,并且能够控制各进程的资源分配。 在LXC的基础之上,Docker提供了一系列更强的功能。 可移植性 Docker定义了一种新的格式,将应用和其依赖环境全部打包到一个单一对象中,这个对象可以在任何安装有Docker的机器上共享,在任何机器上执行这个对象的效果都是一样的。LXC仅仅实现了进程沙盒化,并不能在不同机器上进行移植。Docker将应用的所有配置进行抽象,打包到一个容器中,使得该容器具有可移植性。 以应用为中心 Docker针对应用的部署做了优化,反映在其API,用户接口,设计原理及文档上面。而LXC仅仅关注容器作为一个轻量级的服务器。 自动化构建 Docker中支持Dockerfile,将应用的所有依赖项,构建工具和包都以源码的形式写在Dockerfile中,然后Docker可以根据Dockerfile构建镜像。该镜像在任何机器上面运行的效果都一样。 版本控制 Docker对容器提供了类git的版本控制功能,支持版本回滚等功能。Docker也实现了增量上传和下载的功能,节约了上传和下载时的带宽资源。 组件重用 一个镜像可以作为基础镜像来创建更多特定的镜像,镜像之间支持多层重用。 镜像共享 Docker开发了一个Docker Hub,里面包含了各种常用的镜像,非常方便,我们也可以将自己的镜像上传到Docker Hub中。用户也可以在私有环境中搭建自己的Docker仓库,用来满足镜像的内部共享。 工具生态系统 Docker定义了一个API,用于自动化和本地化容器的创建和部署。已经存在大量的集成了Docker的工具集,例如Deis,mesos,docker-ui,jenkins等等。 推荐学习:《docker视频教程》 以上就是lxc和docker之间的区别是什么的详细内容,更多请关注gxlcms其它相关文章!