Docker,容器,虚拟机和红烧肉
前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到教程。
Docker是什么?容器又是什么?
Docker 直译:码头工人。是在码头上搬运货物的工人
容器 英文:Container,如果再翻译回来就有2个不同的释义:集装箱/容器。
如果按照这世界上大多数正常人的理解,大家会把 Docker(码头工人)和 Container (集装箱)这一对事物放在一起,他们的关系一目了然:码头工人搬运集装箱。但是如果按照这世界上另外的一类人(程序员)的理解,我们会这样组合 ,Docker (代码集装箱搬运工)和 Container (容器)。
Docker与容器是完全2个不同的东西,Docker是用来组装/搬运/拆包容器的工具。当然也可以是人,我们原来这些苦逼的程序员谁没干过zip/copy/paste/unzip的工作呢?其实Docker就是这样一个工具,用来打包 (build)/传送(push/pull)/拆包 (run) 那些需要运行的应用。而容器就是那个包。
那么容器又是什么?
其实和集装箱很类似,就是把那些需要放在一起从A地运送到B地运行的,不能和其他程序混杂的代码封装成的一个包而已。这个概念从计算机出现的那天基本上就存在了,只是这么多年我们一直在不停的改进,但从来没有一个像docker这样的工具让容器的使用变的如此简单。在Unix/Linux的世界里,它曾将叫做 Process Container,现在被称为Control Group (cGroup);在Windows世界里,我们曾经有组件。他们的目的都一样,为了把程序从A地运送到B地,同时确保他们可以相互隔离的运行。
Docker绝对不等同于容器。一个是干活的人,一个是被搬运的物品,能一样吗?但是我仍然在各种技术文章,会议演讲上看到和听到将他们混为一谈的说法。实在觉得需要给他们正名,也是今天写这个文章的主要原因。
Docker,容器与虚拟机有啥区别?
在每一篇介绍Docker的文章里面都会看到与虚拟机比较的内容,其实我觉得这完全是拿苹果和香蕉比较,它们完全不具备可比性,至少在技术上!
大家为啥要这样比较,主要目的是让那些不了解IT但是却在管理IT的人(对,就是你的领导和你的客户)理解为啥他们好不容易,花了n多钱建立起了虚拟化平台/私有云,现在还要再花钱搞容器,搞docker。对的,这纯粹是个市场行为,与技术无关,因为他们在技术上不具备可比性。
惯常的说法,容器启动迅速(对,它只需要加载那些当前应用的进程)虚拟机启动缓慢(废话,它要加载一堆和应用无关的进程好吗)。你试试把100个应用打包到一个容器里面然后启动它,估计你一定会被98%的Windows用户打败。
给你一个hyper-v, vmware, kvm你跑不了容器,你还是需要在上面启动虚拟机,然后才能运行容器。就好像你要在家里提供100个品类的菜单,然后让你儿子每天回来点餐,给他个沙漏,然后说你随便点,我保证在10分钟内上菜。你当你是谢霆锋呢?人家谢大厨后面有10个帮厨,10个采购,10个餐厅经理,10个服务员,做的菜都是提前腌制的。你就算有三头六臂也只能说:臣妾做不到啊!
所以,容器之所以快,是把每次都要启动操作系统的操作预先完成了,这样只需要启动应用本身而已。而且,容器不会比直接启动一个应用快,甚至还会更慢一点。
然并卵,那我要这七十二变有何用?
牢骚发够了,还是说说Docker到底有啥用?Docker这个搬运工与其他搬运工不同的是,他在组装容器的时候会把应用需要的其他配件都放在一个集装箱里。这样,集装箱到货以后,直接开包就可以完成应用组装;不用再到其他地方七拼八凑的去找各种配件了。这就好比你想做红烧肉,原来的应用打包只给你打包了肉(应用),别的什么八角,香叶,冰糖,生抽老抽(应用依赖环境)都不带;现在商家提供一站式服务,一个包里不光有肉,还有七七八八所有的东西。你家里有炉子,有锅就够了(操作系统)。
另外,Docker厉害的地方在于,它不光提供了这些配料,还把物流给你搞定了。我们现在可以直接向商家(Docker Hub)下单,商家送货上门(Docker Pull),你准备好炉子和锅(操作系统),直接下锅(Docker Run),菜就上桌喽。
最后,用一句话定义Docker,那就是:优化应用运维过程的工具和生态系统。
晚上吃红烧肉!祝大家胃口好!
Docker,容器,虚拟机和红烧肉相关推荐
- docker容器简介及安装
docker容器简介及安装 一.docker的前世今生 早期 过度 目前 二.什么是docker 三.docker核心概念 1.镜像 2.容器 3.仓库 四.docker容器和虚拟机的区别 五.doc ...
- docker:虚拟化和docker容器概念
目录 前言 一.虚拟化简介 1.虚拟化概述 2.耦合与解耦合 2.1 耦合 2.2 解耦合 2.3 小结 3.虚拟化作用 4.虚拟化工作原理 4.1 QEMU 4.2 KVM 4.3 虚拟化类型 4. ...
- docker容器——虚拟化
docker容器 前言 一.docker容器 1.docker是什么 2.容器.Docker.虚拟机 1)容器 2)虚拟机 3)Docker与虚拟机的区别 3.容器在内核中支持2种重要支持技术 1)N ...
- docker容器虚拟化技术_Docker,虚拟机和容器的全面介绍
docker容器虚拟化技术 by shota jolbordi 通过Shota Jolbordi Docker has been a buzzword for tech people for the ...
- vmware虚拟机redhat7.2下docker容器安装hadoop
2019独角兽企业重金招聘Python工程师标准>>> 系统准备: 系统安装及配置 [略]详见:http://www.osyunwei.com/archives/7702.ht ...
- docker新建Linux虚拟机,RHEL/CentOS 7下创建你的第一个Docker容器
Docker容器人气一直在增长.他们现在正在快速采用,正在取代虚拟机,特别是在应用程序开发方面. 在本教程中,我们将讨论Docker容器的内容,并将学习在RHEL/CentOS 7上安装它的过程. D ...
- 什么是容器、什么是docker、docker与虚拟机的对比、docker做什么、运行场景,Docker功能和组件,Docker的C/S模式的运行,Docker概念,相关概念
1.什么是容器 简单来说容器是一种内核技术的虚拟化体现(Cgroup和Namespace),容器可以在核心CPU上运行本地指令,有效的将单个操作系统进行分组管理和隔离. 2.什么是Docker 一种容 ...
- 虚拟服务器容器,docker容器和虚拟机的区别
结构方面区别 虚拟机实现资源隔离的方式,是利用Hypervisor虚拟化 而 简单来说,Docker就是利用namespace实现的系统环境的隔离,利用cgroup实现资源限制,利用镜像实现根环境的的 ...
- Docker 容器 和 虚拟机 的异同
见:https://www.docker.com/what-container 将软件打包成标准化的单元进行开发,发货和部署 容器映像是一个软件的轻量级独立可执行软件包,包含运行所需的所有内容:代码, ...
- 容器精华问答 | Docker和虚拟机有什么差别?
戳蓝字"CSDN云计算"关注我们哦! 容器技术是这两年热门的话题,因为容器技术给我们带来了很多方便的地方,节约了不少成本,不管是在运维还是开发上.今天,就让我们来看看关于容器更加有 ...
最新文章
- mysql并发更新数据,多用户并发修改数据解决方案。
- DSP与CEVA芯片
- POJ 2104 K-th Number(区间第k大数)(平方切割,归并树,划分树)
- Jenkins中构建时提示:Couldn‘t find any revision to build. Verify the repository and branch config
- 好中的图像处理方面的期刊_约会中,注意这四个方面,帮助你把握好自己的真爱...
- 函数在机器底层是如何实现的_软件机器人如何实现“二次录入”自动化,促进智慧政务?...
- Vue Nginx反向代理配置 解决生产环境跨域
- 小记:《技术进步引发的灵感革命》网易游戏学院第二届公开日
- poj 3071 Football 概率dp
- Win7-64位 Cygwin编译Redis
- 搭建内网文件共享服务器,如何搭建共享服务器实现办公室文件共享?
- 突破速达系列软件科目级长的限制
- 使用pyserial开发的一个串口调试工具
- iOS依赖注入框架系列(二):设置Typhoon
- 布兰迪斯大学计算机科学专业,美国布兰迪斯大学计算机科学博士专业介绍
- Material Design专用在线配色工具
- 神经网络能用来干什么_知识普及:卷积神经网络模型是怎样工作的?可以做些什么?...
- SQL Server 2012 AlwaysOn高可用配置之六:启用AlwaysOn功能
- 给女友的网页小惊喜--相册万花筒
- 1190-1199: 习题6-2 排序
热门文章
- oracle错误27101,ORA-27101ORA-01034错误解决
- #{} 跟${}的区别
- python 3.8 新特性 video_1分钟了解:Python3.8 新特性:仅位置参数
- 【牛客 - 373A】翻硬币问题(博弈,结论,分析)
- 【洛谷 - P1507 】NASA的食物计划(二维费用背包,dp)
- 【HDU - 2102】A计划 (麻烦一点的bfs)
- python去除图像光照不均匀_低光照环境下图像增强相关
- 搜索页面html代码怎么写,页内搜索功能源代码
- matlab两张图片合成一张_11. 图像合成与图像融合
- idea 升级到2020后 无法启动_升级iOS 14尝鲜后,无法降级 iOS13.5.1?