欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  网络运营

docker入门之容器介绍

程序员文章站 2022-03-06 09:53:56
docker概述 docker是一个开源的软件部署解决方案; docker也是轻量级的应用容器框架; docker可以打包、发布、运行任何的应用,这个也是docker...

docker概述

docker是一个开源的软件部署解决方案;
docker也是轻量级的应用容器框架;
docker可以打包、发布、运行任何的应用,这个也是docker的产品理念:docker - build, ship, and run any app, anywhere
docker采用的是lxc(namespace+cgroups),即在linux内核的namespace[资源隔离]和cgroups[资源控制]技术的基础上通过镜像管理机制来实现轻量化设计。

docker组成

docker的组成包括docker server和dockerclient,其中docker包括的组件:容器(container)、镜像(image)和仓库(repositories),如下图:

docker入门之容器介绍

docker vs vm

docker作为容器的一种,跟传统的vm存在很大的差异,首先从架构上比较2者所在的位置:

docker入门之容器介绍

通过比较,我们可以看出,vm其实是在硬件的基础上虚拟化(hypervisor)出来的操作系统,多个vm之间共享底层硬件资源。而docker是在linux基础上采用namespace和cgroups技术进行的隔离,这就造就了docker既可以运行在硬件操作系统之上,也可以运行在vm之上。2者的区别也决定了,2者的差异,这里总结了两者的差异,汇总如下:

docker入门之容器介绍

docker既然存在这样的特性,那么docker可以做什么呢?下图给出了docker的8种场景,而作者从实际的工作出发,主要采用docker将现有产品的发布流程精简化,减少了大量的环境配置工作,由于docker的隔离性,可以将应用程序打包成docker镜像,同一个产品不同版本可以打包成不同的镜像,这也方便了测试的工作。

docker入门之容器介绍

因此,从不同的岗位看待docker,docker带来的改变是全方面的

docker入门之容器介绍