docker

本文探讨了Docker如何打包开发程序依赖,利用沙箱隔离并简化应用部署。对比了Docker与虚拟机的启动速度和资源占用,强调了Docker直接调用Linux内核的优势。此外,解析了Linux内核与系统应用的关系,并列举了几个关键概念和技术区别。
摘要由CSDN通过智能技术生成

doker
把各个开发程序及需要的依赖和linux函数库打包的技术
通过沙箱机制隔离各个程序应用,应用之间是不可见的,解决了依赖混乱的问题

linux各版本系统的架构,
系统应用层→linux内核→计算机硬件层

linux内核就是各种操作计算机硬件的指令,但指令太多不便于操作,于是就把指令封装成一个个函数,再把这些函数集合起来成为一个函数库,上边讲到的函数库就是系统应用,如乌班图,红帽等linux操作系统,其实都是基于linux的内核做的指令集合封装成函数的系统,不过不同linux系统对内核中的指令封装有所不同,比如函数名称,功能侧重点等
而doker直接把函数库和程序包和程序需要的依赖全部打成一个包,通过函数库调用linux内核,再通过内核调用计算机硬件,实现了一次打包,不同linux系统中运行的效果,直接通过docker中的函数库去调用linux内核,就不用管系统应用层面的交互了

再说说docker和虚拟机的差别

docker 程序应用直接调用函数库, 函数库直接与linux内核打交道,内核又去调用计算机硬件

虚拟机 从下到上
最底层的硬件,再上层windows系统,再上层的hypervisor,hypervisor模拟了一个硬件环境(包括cpu等硬件),再在该模拟的硬件环境上装操作系统,再在操作系统上装程序,

调用顺序如下:
程序调用操作系统,操作系统调用模拟的硬件,模拟硬件再调用windows系统,windows系统再去调用真正的计算机硬件

docker和虚拟机比较

docker以大小M为单位,直接调用linux内核,启动快以秒为单位,又小速度又快

虚拟机以G为单位,从上到下层层调用,启动以分钟为单位又大速度又慢

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值