VM 与容器之争!Docker赢了!

在过去的几年里,Docker引发了 IT 技术行业很大的兴奋点。许多公司,无论是初创企业还是行业巨头都已转向到了Docker,并把它作为其技术团队中DevOps应用程序部署的一部分。

在本文中,我们一起来了解Docker,包括如下内容:

1. Docker之前IT互联网公司面对的挑战

2. 来自于安全攻击的问题

3. 容器中容器和Docker的演变

4. VM 与容器之争

5. Docker及其架构

6. 解决方案:Docker如何帮助缓解早期面临的挑战

挑战是什么?

640?wx_fmt=png

运维团队在一些场合,要对多个环境中维护多个技术栈是非常痛的噩梦。除此以外,人们还需要操心迁移到不同的技术,平台升级等问题,这种情况会使运维工作变得更加复杂,在业务量超大的情况下可以无法支撑,对CTOBAU运营会产生巨大影响。

如下图所示:

640?wx_fmt=jpeg


地狱的矩阵

640?wx_fmt=png

如果你了解 Google 来自地狱的矩阵,我相信你会发现很多关于Docker如果从地狱窘境解决矩阵的文章。

DevOps地狱矩阵是什么?简而言之,无论语言/框架/依赖性如何,打包任何应用都是一个挑战。需要无论任何操作系统/硬件/基础架构如何,都需要紧密结合运行

640?wx_fmt=jpeg


解决方案:多级联运集装箱

640?wx_fmt=png


640?wx_fmt=jpeg

解决方案:有效隔离关注点

640?wx_fmt=png

通过隔离开发人员和管理员的担忧,Docker的引入帮助消除了这个矩阵。开发人员可以专注于将应用程序和依赖项捆绑为容器,而不必为底层硬件/基础架构而烦恼。管理员/ DevOps团队可以专注于管理容器,而不用担心这些容器上的内容。


640?wx_fmt=jpeg


解决方案:为开发人员和管理员带来的好处

640?wx_fmt=png


640?wx_fmt=jpeg

 640?wx_fmt=gif

什么是docker?

640?wx_fmt=png

Docker是开发,传输和运行分布式应用程序的开放平台。无论是在笔记本电脑、数据中心虚拟机,还是在云端上。Docker提供了被称为容器的松散隔离环境中提供打包和运行应用程序的能力。

Docker平台由多个产品/工具组成,其中包括Docker 引擎(Engine),镜像(Images),容器(Containes)和路由器(Hub)等组成。


640?wx_fmt=jpeg

docker架构

640?wx_fmt=png


640?wx_fmt=jpeg

docker镜像容器和注册表

640?wx_fmt=png


640?wx_fmt=jpeg

VM与容器

640?wx_fmt=png


640?wx_fmt=jpeg

解决方案:docker消除了Matrix

640?wx_fmt=png

Docker通过将应用程序与底层操作系统和硬件分离,解决了地狱矩阵问题。它通过打包Docker容器(包括操作系统)中的所有依赖项来实现此目的。这使得Docker容器可移植,即它们可以在任何云或机器上运行,而不会出现可怕的它在这台机器上工作的问题。


640?wx_fmt=png

THE

END

640?wx_fmt=jpeg

长按二维码 ▲

订阅「架构师小秘圈」公众号

如有启发,帮我点个在看,谢谢↓

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值