docker是干什么的_轻松了解下Docker是干什么的

97ef1fd2a4b71435d6f39aacbfe63d0d.png

百丈高楼平地起,笔者这里先带着大家了解下Docker究竟是干啥用的。

目前,随着物理服务器的配置越来越高,我们如果在一台物理服务器上只跑一个服务就浪费了,而同时跑很多服务他们又互相影响,比如说一个服务出了内存泄漏把整个服务器的内存都占满了,其他服务都跟着倒霉。所以要把每个服务都隔离起来,让它们只使用自己那部分有限的cpu,内存和磁盘,以及自己依赖的软件包。这个早先是用虚拟机来实现隔离的,但是每个虚拟机都要装自己的操作系统核心,这是对资源有点浪费。于是就有了Docker 一个机器上可以装十几个到几十个docker,他们共享操作系统核心,占用资源少,启动速度快。但又能提供了资源(cpu 内存,磁盘等)的一定程度的隔离。

af258409ed88ffcecc1c356d627c5246.png

使用docker给软件开发又带来了不少额外的好处。比如说运维省心啊,所有物理服务器的配置几乎都是一样的,只是上面跑的docker container不同。以前某个服务访问量大了,需要多几台服务器,你得一台一台准备,现在直接docker配好,要几个就给几个。还有依赖关系管理也容易了,每个docker image都可以独立配置自己需要的软件包,准备一个配置文件就可以发布,不像以前配置个apache + php就在一台物理主机上从头编译到尾,如果想再多个插件,往往是从头又来一遍,机器多了是受不了的。而且依赖有冲突也没那么怕了,都隔离了嘛。现在docker的隔离性已经做的非常好了。

09a834371dc6e5a30c18d45e1cf42f47.png

我觉得docker有个问题是linux宿主和windows宿主的docker实现差异还挺大的。linux是基于linux核心的namespaces和cgroup等来隔离资源,还有libvirt这样的接口实现,基本上能当个虚拟机来用,又很轻量级。windows方面主要是靠微软,微软做得也还不错,前后搞了好几种container方案,前段时候我试过的是基于hyper-v的 功能应该都在了,所以说现在docker在windows主机上也是能用的 这对国内庞大的windows服务器保有量也是个福音。不过在windows上面使用docker开发是没问题,用于生产环境那就只能呵呵了。

最后,笔者在这里呐喊一声,求关注啊,笔者会持续不断地更新编程相关的内容,期待与你一起进步。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值