Docker容器有什么技术

发布时间:2021-12-14 09:59:18 作者:iii
来源:亿速云 阅读:173

本篇内容介绍了“Docker容器有什么技术”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

容器技术是操作系统层面的一种虚拟化技术。在Linux系统下,容器能够利用Namespaces、AppArmor、SELinux配置、Chroot以及CGroups等内核功能,交付一套类似于虚拟机的隔离性环境。经过不断的发展,容器技术所带来的轻量级、隔离性、标准化以及可大规模部署的特性促生了微服务和云原生应用的普及和发展。

Docker容器

毫无疑问,Docker是目前最具人气且应用最为广泛的容器技术。为什么呢?作者总结了以下主要的两个原因。

1、和早期容器技术不同,Docker不只是针对了应用对主机资源的共享和隔离,它更加关注应用的微服务化,大规模部署和管理自动化。微服务和云原生应用的发展极大的提高了Docker技术的大众接受程度。

2、Docker不只是一个工具包,围绕它的是一整套生态系统。包括镜像库、容器管理调度、网络、存储、安全。这一整套生态系统让应用采用容器技术进行大规模的封装,部署,运维,管理成为可能。

容器的特性如何在生产环境中发挥所长,还需要其生态圈中一系列的工具、产品和方案作以支撑。以下我们会对Docker以及它代表的容器技术生态系统做进一步的介绍。

容器生态圈

下图中的内容就是容器生态圈中的各个组件,我们将会从下至上逐一分层解析。

Docker容器有什么技术


 

1、容器OS

容器OS并不是运行容器的必要条件,容器也可以运行在通用Linux中。大部分的容器OS即为Linux OS的精简版。相比大而全的Linux OS,容器OS如RancherOS、CoreOS、Redhat Atomic、Ubuntu Core、VMware Photon具有更加轻量,占有资源更少的特征,适合于更加标准化的数据中心和IOT的一些领域。同时,Microsoft也于2015年推出Windows Nano Server,并将其作为Windows2016的安装选项,其大小相比完整的Windows2016部署缩小了90%以上。

2、容器引擎

容器引擎负责容器应用的隔离和资源共享。它驱动和管理主机上所有的容器,并且包括了容器卷管理、容器网络管理、容器配置、镜像管理以及容器日志。容器生态圈中容器引擎主要有两个标准OCI和AppC,两个引擎Docker和RKT。 以下是一张对比表:

Docker容器有什么技术
 

3、容器存储

容器中一般运行是无状态应用。对于有状态应用,应用的数据持久化就需要容器存储的支持。Docker为了支持第三方存储方案,在1.8版本引入Volume Plugin机制。Flocker作为Volume Plugin,需要和第三方外部存储结合使用为容器提供持久化存储,同时也屏蔽掉第三方存储系统的差异,类似Cinder在OpenStack中的位置。而Torus (项目已于2017年2月停止开发,“Developmenton Torus at CoreOS stopped as of Feb 2017”引用自Github Torus项目说明)和Comet(有容云)作为独立的分布式存储系统,可直接为容器提供完整的数据存储服务。 

Comet存储系统作为国内少有的自主研发分布式系统,除了针对容器特性进行性能优化外,也提供了多级数据保护,应用感知等企业级存储特性。

Docker容器有什么技术
 

4、容器网络

容器网络解决容器在大规模部署后的互联互通的问题。主要有Docker原生的CNM容器网络模型和CoreOS支持的CNI容器网络模型。除了Docker原生的Libnetwork网络方案,在容器网络生态圈中,有以下几种商业容器网络方案。

推荐阅读:
  1. Docker容器技术介绍
  2. docker容器技术有哪些缺点

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

docker

上一篇:如何进行Django JSONField,HStoreField SQL注入漏洞分析

下一篇:mesos+docker+marathon怎么用

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》