Docker快速入门之简介

1.什么是Dcoker?

     docker可以说是一个小型的虚拟环境,我们可以在上面运行我们的代码,有人就会说不是有虚拟机吗,虚拟机是可以,不过消耗资源过多,例如你一个机器上要运行几十个应用很明显是不现实的,那还会有人说那语言层面不是也有隔离吗,例如java不是有jvm吗,通过语言层面虽然资源消耗小,但是隔离性十分之差,一个应用很容易影响另一个应用,而docker取隔离和消耗的衡。          

    docker支持文件隔离,资源隔离,进程隔离等,这一切的实现都依赖于linux内核(所以你想在windwos运行docker本质上就是先运行一个linux虚拟机,再运行一个docker容器,捞得一),有一定的隔离性,不过还是共用一个linux内核,不是全隔离。

2.为什么需要docker?

   1.开发环境和生产环境的不同。

      就我现在的公司来说开发框架是自研的,但是总有一些包的导入方式在开发和生产环境是不一样的,这就很蛋疼,每次开发完,都得改一些包的导入方式,如果用docker的话,我们可以把环境分为开发,测试,生产环境,我们完全不用担心各种环境问题,我们一个镜像就能运行在不同的环境,例如在测试环境测试不过,只需要在开发重新搞就行,不用把代码改来改去。

   2.节约成本

      首先先简单说一下Iaas,Paas,Sass三者的区别,Iaas最为简单其实就是给你一台电脑,你想怎么搞就怎么搞,就是租电脑的。

       但是一般服务都不只用到一台电脑,那问题就来了,这么多台电脑,这么多服务,从部署,到服务的后期管理是非常复杂的,还是以我现在公司为例,我们公司现在是在腾讯云上面租服务器,但是应用部署,应用编排(包括扩容,服务发现)都是自研平台,而服务器加上这些为了管理这些服务而加上的组件,称为Paas,我们一般crud程序员只需要在上面编写我们代码模块就可以了。

      Saas就更简单了,连代码都不用写了,换个公司logo,界面就能用了。

      现在我们知道三者的区别了,那么一般的创业公司是没有能力去基于Iaas去搞自己一套Paas系统的,那怎么办呢,现在最流行的就是k8s,k8s这些东西都能帮我们去搞,而k8s是基于docker的,大大减少了开发成本,人力成本(自己搞的,只有自己公司能看懂,你招新人进来,要重新熟悉,需要时间),而用k8s之后,有一个公开的标准,找人就容易多了(跳槽也容易多了)。

3.基础架构

我们可以看出大概分为客户端,容器,镜像,仓库,创建docker环境的软件,其中的关系图已经说的很清楚了。

     

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值