负责网站开发的岗位,电子商务网站名称,青春网站建设工作室,雷山网站建设#x1f3e1;浩泽学编程#xff1a;个人主页 #x1f525; 推荐专栏#xff1a;《深入浅出SpringBoot》《java对AI的调用开发》 《RabbitMQ》《Spring》《SpringMVC》《项目实战》 #x1f6f8;学无止境#xff0c;不骄不躁#xff0c;知行合一 文章目录 … 浩泽学编程个人主页 推荐专栏《深入浅出SpringBoot》《java对AI的调用开发》 《RabbitMQ》《Spring》《SpringMVC》《项目实战》 学无止境不骄不躁知行合一 文章目录 前言一、Docker是什么Docker历史 二、Docker为什么会出现三、Docker能做什么总结 前言
学习一门技术首先就要了解这个技术的是做什么的为什么会出现才能更好的学习与理解。 一、Docker是什么
Docker是一个容器。容器一词的英文是container其实container还有集装箱的意思集装箱绝对是很了不起的一项发明大大降低了海洋贸易等运输成本。让我们来看看集装箱的好处 集装箱内物品之间相互隔离长期反复使用快速装载和卸载规格标准在港口和船上都可以摆放极大利用空间 而Docker就如同一个集装箱大家可以看到Docker的标志就是鲸鱼上背着集装箱。
Docker历史
2010年几个搞IT的年轻人就在美国成立了一家公司dotcloud做一些pass的云计算服务就是一个关于Linux服务器有关的容器技术他们将自己的技术容器化技术命名为Docker。Docker刚诞生时没有让行业很关注所以Docker就是不赚钱了怎么办要饿死了嘛no no创始人就决定将他开源2013年源代码公开出去。哪曾想果然免费的最好用啊越来越多人发现Docker的优点火了问怎么算火答每个月都有版本更新。Docker1.0发布2014年4月9日。问为什么这么火。答很轻巧。问具体说说。答别急继续往下看。
二、Docker为什么会出现 模拟场景一产品软件研发——windows开发服务器Ubuntu/CentOs上线 运维小李过来你这写的什么软件怎么运行不了。 程序员小李什么我在我的电脑上明明可以运行
对于运维和开发人员来说这就是典型的开发上线两套环境研发人员写好后上线的环境又要重新去配置毕竟windows和linux还是有区别的。环境配置十分麻烦每个机器都要部署环境如集群Redis、ES、Hadoop等真是费时费力打工人大喊真实住了狠狠共情。
那么问题来了发布一个项目jarredisMySQLjdkES等等能不能带上环境进行打包
这不Docker来了新技术的出现就是有问题要解决。
对比与类比
传统 开发人员windows开发jar运维来发布到Linux。java——apk——发布应用商店——张三使用apk包安装即可用。 有了Docker 开发打包部署上线一套流程全搞定。java——jar环境——打包项目带上环境镜像——Docker仓库商店——下载发布的镜像直接运行。 模拟场景二水果肉类一起运输 问一个船一起运输串味怎么办 答使用集装箱把水果放一个集装箱肉类放一个放在船上直接运走。
同样Docker就是一种集装箱技术打包装箱每个箱子都是互相隔离的所以一个Docker容器出现问题也不要怕其他的容器会受到影响。 VMware为例 VMware大家应该很熟悉虚拟机技术。我们经常在虚拟机装系统如Ubuntu每个镜像就是一个模仿真实操作系统所以一个镜像就要一二十个G多装几个的话内存吃不消啊。而现在有了Docker一个系统内可以装入多个容器很小的空间也能压榨出来作为一个集装箱甚至现在能装入十几个容器等。
虚拟机在window中装一个Vmware通过这个软件我们可以虚拟出来一台或者多台电脑很笨重虚拟机也是属于虚拟化技术Docker容器技术也是一种虚拟化技术vmware隔离需要开启多个虚拟机linux centos原生镜像一个电脑需要几个G内存空间开启需要几分钟docker隔离镜像最核心的环境4m内存十分的小巧运行镜像就可以了小巧几个M或KB的内存空间秒级启动
三、Docker能做什么 讲到这里大家应该了解了我们做一下总结。 之前的虚拟机技术
资源占用十分多冗余步骤多启动很慢
容器化技术
容器化技术不是模拟的一个完整的操作系统比较Docker和虚拟机技术的不同 传统虚拟机虚拟出一条硬件运行一个完整的操作系统然后在这个系统上安装和运行软件。容器内的应用直接运行在宿主机的内核中容器是没有自己的内核的也没有虚拟我们的硬件所以就轻便了。每个容器间是互相隔离每个容器内都有一个属于自己的文件系统互不影响。
开发和运维
应用更快速的交付和部署 传统一堆帮助文档安装程序!Docker打包镜像发布测试一键运行! 更便捷的升级和扩缩容 使用了Docker之后我们部署应用就和搭积木一样项目打包为一个镜像扩展服务器A服务器B! 更简单的系统运维 在容器化之后我们的开发测试环境都是高度一致的。 更高效的计算资源利用 Docker是内核级别的虚拟化可以在一个物理机上可以运行很多的容器实例服务器的性能可以被压榨到极致。 总结
以上就是对Docker的概述。