Docker_云计算技术简述
Docker官方网站 > https://www.docker.com/
Docker博客 > https://www.docker.com/blog/
Docker内容库 > https://www.docker.com/resources
containerd > https://containerd.io/
容器化/容器式入门 > https://containerd.io/docs/getting-started/
什么是Docker
1.起源
Docker 是 PaaS 提供商 dotCloud 开源的一个基于 LXC 的高级容器引擎,源代码托管在 Github 上, 基于go语言并遵从Apache2.0协议开源。
Docker自2013年以来非常火热,无论是从 github 上的代码活跃度,还是Redhat在RHEL6.5中集成对Docker的支持, 就连 Google 的 Compute Engine 也支持 docker 在其之上运行。
一款开源软件能否在商业上成功,很大程度上依赖三件事 - 成功的 user case(用例), 活跃的社区和一个好故事。
dotCloud 之家的 PaaS 产品建立在docker之上,长期维护且有大量的用户,社区也十分活跃,接下来我们看看docker的故事
2.将软件打包到标准化单元中,以进行开发,运输和部署为Docker核心
容器是打包代码及其所有依赖项的软件的标准单元,因此应用程序可以从一个计算环境快速可靠地运行到另一个计算环境。
Docker容器映像是轻巧的,独立的,可执行的软件软件包,其中包含运行应用程序所需的一切:代码,运行时,系统工具,系统库和设置。
容器映像在运行时成为容器,对于Docker容器,映像在容器Docker Engine上运行时成为容器。
不论基础架构如何,容器化软件都可用于基于Linux和Windows的应用程序,始终运行相同。容器将软件与其环境隔离开来,并确保尽管开发和登台之间存在差异,但软件仍可以均匀运行。
在Docker Engine上运行的Docker容器:
标准: Docker创建了容器的行业标准,因此它们可以在任何地方移植
轻量级:容器共享计算机的OS系统内核,因此不需要每个应用程序都具有OS,从而提高了服务器效率并降低了服务器和许可成本
安全:容器中的应用程序更安全,Docker提供了业界最强大的默认隔离功能
3.Docker容器无处不在:Linux,Windows,数据中心,云,无服务器等
Docker容器技术于2013年作为开源Docker Engine推出。
它利用了围绕容器的现有计算概念,特别是在Linux世界中,这些原始概念被称为cgroups和命名空间。
Docker的技术之所以独特是因为它专注于开发人员和系统操作员的需求,以将应用程序依赖项与基础架构分开。
Linux世界的成功推动了与Microsoft的合作,将Docker容器及其功能引入Windows Server(有时也称为Docker Windows容器)。
可以从Docker及其开源项目获得的技术Moby已被所有主要数据中心供应商和云提供商所利用。
这些提供商中有许多正在利用Docker来提供其容器原生的IaaS产品。
此外,领先的开源无服务器框架利用Docker容器技术。
4.Docker容器无处不在:Linux,Windows,数据中心,云,无服务器等。
Docker容器技术于2013年作为开源Docker Engine推出。
它利用了围绕容器的现有计算概念,特别是在Linux世界中,这些原始概念被称为cgroups和命名空间。
Docker的技术之所以独特是因为它专注于开发人员和系统操作员的需求,以将应用程序依赖项与基础架构分开。
Linux世界的成功推动了与Microsoft的合作,将Docker容器及其功能引入Windows Server(有时也称为Docker Windows容器)。
可以从Docker及其开源项目获得的技术Moby已被所有主要数据中心供应商和云提供商所利用。
这些提供商中有许多正在利用Docker来提供其容器原生的IaaS产品。此外,领先的开源无服务器框架利用Docker容器技术。
5.比较容器和虚拟机
容器和虚拟机具有相似的资源隔离和分配优势,但功能不同,因为容器虚拟化了操作系统,而不是硬件。容器更加便携和高效。
货柜
容器是应用程序层的抽象,将代码和依赖项打包在一起。
多个容器可以在同一台计算机上运行,并与其他容器共享OS内核,每个容器在用户空间中作为隔离的进程运行。
容器占用的空间少于VM(容器映像的大小通常为几十MB),可以处理更多的应用程序,并且需要的VM和操作系统更少。
虚拟机器
虚拟机(VM)是将一台服务器转变为多台服务器的物理硬件的抽象。
虚拟机管理程序允许多个VM在单台计算机上运行。
每个VM包含操作系统,应用程序,必要的二进制文件和库的完整副本-占用数十GB。VM也可能启动缓慢。
容器和虚拟机一起
一起使用的容器和VM在部署和管理应用程序时提供了很大的灵活性。
6.集装箱标准与行业领导
Docker在2013年的发布极大地推动了应用程序开发的革命-通过使软件容器民主化。
Docker开发了一种Linux容器技术-一种可移植,灵活且易于部署的技术。
Docker开源libcontainer,并与世界各地的贡献者社区合作,以促进其发展。
2015年6月,Docker向开放容器倡议(OCI)捐赠了容器映像规范和现在称为Runc的运行时代码,以帮助随着容器生态系统的发展和成熟建立标准化。
随着这种发展,Docker继续回馈容器化项目,该项目在Docker于2017年捐赠给了Cloud Native Computing Foundation(CNCF)。
containerd是利用runc的行业标准容器运行时,其着重于简单性,健壮性和便携性。
containerd是Docker Engine的核心容器运行时。
7.Docker引擎引发了容器化运动
Docker Engine是业界事实上的容器运行时,可在各种Linux(CentOS,Debian,Fedora,Oracle Linux,RHEL,SUSE和Ubuntu)和Windows Server操作系统上运行。
Docker创建了简单的工具和通用打包方法,将所有应用程序依赖项捆绑在一个容器中,然后在Docker Engine上运行。
Docker Engine使容器化的应用程序能够在任何基础架构上一致地运行,从而为开发人员和运营团队解决了“依赖地狱”,并消除了“可在我的笔记本电脑上工作的”问题。
8.containerd
截至2019年2月28日,容器技术是Cloud Native Computing Foundation中正式毕业的项目,紧随Kubernetes, Prometheus,Envoy和 CoreDNS之后。
containerd可用作Linux和Windows的守护程序。
它管理着整个主机系统的整个容器生命周期,从图像传输和存储到容器执行和监督,再到低级存储再到网络附件等等。
Docker企业版3.0
业界领先的企业容器平台
Docker Enterprise是大规模使用容器和Kubernetes的最简单,最快的方法,并为现代应用程序提供了最快的生产时间,可从混合云到边缘安全地运行它们。
Docker_云计算技术简述的更多相关文章
- 云计算 --> 技术原理
云计算技术原理 云计算分为IaaS.PaaS和SaaS三种类型,不同的厂家又提供了不同的解决方案,目前还没有一个统一的技术体系结构,下图是一个供商榷的云计算体系结构如下,它概括了不同解决方案的主要特征 ...
- [转帖]腾讯云TStack获下一代云计算技术创新奖 与鲲鹏等产品实现兼容性测试
http://www.techweb.com.cn/cloud/2019-12-16/2769286.shtml [TechWeb]12 月 16 日消息,在中国电子技术标准化研究院主办的“第九届中国 ...
- PLUTO平台是由美林数据技术股份有限公司下属西安交大美林数据挖掘研究中心自主研发的一款基于云计算技术架构的数据挖掘产品,产品设计严格遵循国际数据挖掘标准CRISP-DM(跨行业数据挖掘过程标准),具备完备的数据准备、模型构建、模型评估、模型管理、海量数据处理和高纬数据可视化分析能力。
http://www.meritdata.com.cn/article/90 PLUTO平台是由美林数据技术股份有限公司下属西安交大美林数据挖掘研究中心自主研发的一款基于云计算技术架构的数据挖掘产品, ...
- IBM推出新一代云计算技术来解决多云管理
IBM 云计算论坛在南京举行,推出了一项全新的开放式技术,使用户能够更加便捷地跨不同云计算基础架构来管理.迁移和整合应用. IBM 多云管理解决方案(Multicloud Manager)控制面板 据 ...
- 你真正的了解Ajax?Ajax技术简述
Ajax技术是目前在浏览器中通过JavaScript脚本可以使用的所有技术的集合.Ajax并没有创造出某种具体的新技术,它所使用的大多数技术都是在很多年以前就已经存在了,然而Ajax以一种崭新的方式来 ...
- NLP+词法系列(二)︱中文分词技术简述、深度学习分词实践(CIPS2016、超多案例)
摘录自:CIPS2016 中文信息处理报告<第一章 词法和句法分析研究进展.现状及趋势>P4 CIPS2016 中文信息处理报告下载链接:http://cips-upload.bj.bce ...
- 【大数据和云计算技术社区】分库分表技术演进&最佳实践笔记
1.需求背景 移动互联网时代,海量的用户每天产生海量的数量,这些海量数据远不是一张表能Hold住的.比如 用户表:支付宝8亿,微信10亿.CITIC对公140万,对私8700万. 订单表:美团每天几千 ...
- Ubuntu中输入输出重定向及管道技术简述
输出 1.标准输出 定义:程序在默认情况下输出结果的地方(stdout). 2.输出重定向 定义:用于把数据的输出转移到另一个地方去. 3.Ubuntu中例子 $ls > ~/ls_out # ...
- GIS+=地理信息+云计算技术——Spark集群部署
第一步:安装软件 Spark 1.5.4:wget http://www.apache.org/dyn/closer.lua/spark/spark-1.5.2/spark-1.5.2 ...
随机推荐
- dede不同栏目调用不同banner图的方法
用顶级栏目ID 方法: <img src="{dede:global.cfg_templets_skin/}/images/{dede:field.typeid function=&q ...
- VMware workstation安装Windows Server 2012 R2步骤详解(附下载链接)
话不多说,直接上链接.所需工具: 1.VMware workstation 14.0(版本无所谓) 附链接:https://pan.baidu.com/s/1CrH ...
- Unreal Engine* 4.19 的 CPU 功能检测
随着现代 CPU 内核数量的增加,可以拥有更多的游戏功能.但是,相比配备高端系统的玩家,内核数量较少的玩家可能会处于劣势.为了缩小这种差距,可以使用 C++ 和蓝图划分特性.这样可以实现最大的 CPU ...
- SQuirreL连接Phoenix报java.util.concurrent.TimeoutException
1.表象 java.util.concurrent.TimeoutException at java.util.concurrent.FutureTask.get(FutureTask.java:20 ...
- SDF:Software-Defined Flash for Web-Scale Internet Storage System
一.参考 http://www.csdn.net/article/a/2013-12-18/309280 http://gtstorageworld.blog.51cto.com/908359/126 ...
- (补发)学pythion的第二天
所学知识点: if语句的使用 在Python中,要构造分支结构可以使用if.elif和else关键字.所谓关键字就是有特殊含义的单词,像if和else就是专门用于构造分支结构的关键字,很显然你不能够使 ...
- chgrp 命令
NAME chgrp - change group ownership SYNOPSIS chgrp [OPTION]... GROUP FILE... chgrp [OPTION]... --ref ...
- XSS练习平台-XSS Challenges
XSS Challenges http://xss-quiz.int21h.jp/ XSS基础不好的建议优先查看 关于XSS中使用到的html编码 js编码各种场景用法 http://su.xmd ...
- 2019牛客暑期多校训练营(第六场)-D Move
题目链接:https://ac.nowcoder.com/acm/contest/886/D 题意:给n个物品,每个物品有一个体积值,K个箱子,问箱子的最小体积为多少可将物品全部装下. 思路:比赛时一 ...
- python数值列表
使用range函数生成数值列表 使用range函数打印1~5的数字 for i in range(1,6): print(i) 输出 1 2 3 4 5 利用range函数生成数值列表 >> ...