博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Docker是什么、为什么是一种趋势
阅读量:5074 次
发布时间:2019-06-12

本文共 1363 字,大约阅读时间需要 4 分钟。

 

Docker的思想来自于集装箱,集装箱解决了什么问题?在一艘大船上,可以把货物规整的摆放起来。并且各种各样的货物被集装箱标准化了,集装箱和集装箱之间不会互相影响。那么我就不需要专门运送水果的船和专门运送化学品的船了。只要这些货物在集装箱里封装的好好的,那我就可以用一艘大船把他们都运走。

docker就是类似的理念。现在都流行云计算了,云计算就好比大货轮。docker就是集装箱。

1.不同的应用程序可能会有不同的应用环境,比如.net开发的网站和php开发的网站依赖的软件就不一样,如果把他们依赖的软件都安装在一个服务器上就要调试很久,而且很麻烦,还会造成一些冲突。比如IIS和Apache访问端口冲突。这个时候你就要隔离.net开发的网站和php开发的网站。常规来讲,我们可以在服务器上创建不同的虚拟机在不同的虚拟机上放置不同的应用,但是虚拟机开销比较高。docker可以实现虚拟机隔离应用环境的功能,并且开销比虚拟机小,小就意味着省钱了。

2.你开发软件的时候用的是Ubuntu,但是运维管理的都是centos,运维在把你的软件从开发环境转移到生产环境的时候就会遇到一些Ubuntu转centos的问题,比如:有个特殊版本的数据库,只有Ubuntu支持,centos不支持,在转移的过程当中运维就得想办法解决这样的问题。这时候要是有docker你就可以把开发环境直接封装转移给运维,运维直接部署你给他的docker就可以了。而且部署速度快。

3.在服务器负载方面,如果你单独开一个虚拟机,那么虚拟机会占用空闲内存的,docker部署的话,这些内存就会利用起来。

总之docker就是集装箱原理。

很通俗易懂! 可以认为docker容器是一个虚拟机,封装就是把这个虚拟机打包,打包后能在任何系统的docker里装上即用。
 
大家应该基本都理解集装箱是怎么改变世界的吧?
在集装箱之前,货物运输没有统一的标准方式进行搬运,于是铁路、公路、海洋等各种运输之间,需要大量的人力作为货物中转,效率极低,而且成本很高。
集装箱出现之后,世界上绝大多数的货物运输都可以放到这个神奇的箱子里,然后在公路、铁路、海洋等所有运输场景下,这个箱子都可以不用变化形态直接可以承运,而且中间的中转工作,都可以通过大型机械搞定,效率大大提升。
从此全球化开始,商业的潜力被进一步挖掘......
2

Java号称“一次编译,到处运行”,因为java虚拟机解决平台的兼容性问题,所以有java虚拟机的地方就能跑java代码;

Docker是:“一次封装,到处运行”,因为docker决绝了应用环境的问题,安装了docker的平台就能跑“docker包”,这样就决绝了“开发环境能跑,一上线就崩”的尴尬。

3
 

 

 4. 

 轻量化虚拟技术,甚至理解成轻量化虚拟机。 新手从这个角度开挖吧,比较直观。
注意: 这个“虚拟机”不是指“JVM虚拟机”这样的虚拟机、而是指“Windows装个Linux操作系统”这样的虚拟环境。
         
现在,虚拟环境整个可以ship来ship去,你把你配好了东西的虚拟环境可以打包成‘镜像’给别人,人家也是拿来直接就获得了这个环境。
 

 

转载于:https://www.cnblogs.com/nanlan2017/p/10451671.html

你可能感兴趣的文章
C#委托总结-匿名方法&Lambda表达式
查看>>
python3实现mysql导出数据到文件
查看>>
JavaScript encodeURI() 函数
查看>>
SimpleDateFormat关于时间类的一些常用处理
查看>>
遗传算法示例
查看>>
高校表白App-团队冲刺第二天
查看>>
学生信息管理系统--基于jsp技术和MySQL的简单增删改查
查看>>
使用cocoscreator + node.js + websocket实现简单的聊天服务
查看>>
什么是预测区间,置信区间与预测区间二者的异同是什么?
查看>>
asp.net (jquery easy-ui datagrid)通用Excel文件导出(NPOI)
查看>>
ubuntuPC机安装JLink驱动
查看>>
快速排序
查看>>
我的第一篇随笔
查看>>
设置Eclipse/MyEclipse中编辑界面点击任何文件后Package Explorer导航自动定位该文件...
查看>>
多阶段决策问题
查看>>
C# write in pdf file
查看>>
jQuery.Pin钉住某个元素
查看>>
[笔记][FPGA]有限状态机FSM学习笔记(三)
查看>>
Hotel Check in & check out
查看>>
数组间赋值
查看>>