为什么要用Docker

Docker作为容器虚拟化的主流工具,其让应用脱离彻底脱离底层机器,使应用可以在物理机(ECS)之间灵活迁移部署,使运维工程师彻底摆脱了繁琐的环境部署,极大的提高了工作效率,同时减少了部署过程中的潜在风险。

Docker与传统VM的特性比较
作为一种轻量级的虚拟化方式,Docker在运行应用上跟传统的虚拟机方式相比具有显著优势:
Docker容器很快,启动和停止可以在秒级实现,这相比传统的虚拟机方式要快得多。
Docker容器对系统资源需求很少,一台主机上可以同时运行数千个Docker容器。
Docker通过类似Git的操作来方便用户获取、分发和更新应用镜像,指令简明,学习成本较低。
Docker通过Dockerfile配置文件来支持灵活的自动化创建和部署机制,提高工作效率。
Docker容器除了运行其中的应用之外,基本不消耗额外的系统资源,保证应用性能的同时,尽量减小系统开销。
当然,在隔离性方面,传统的虚拟机方式多了一层额外的隔离。但这并不意味着Docker就不安全。Docker利用Linux系统上的多种防护机制实现了严格可靠的隔离。从1.3版本开始,Docker引入了安全选项和镜像签名机制,极大地提高了使用Docker的安全性。

下表总结了使用Docker容器技术与传统虚拟机技术的特性比较

特性 容器 虚拟机
启动速度 秒级 分钟级
硬盘使用 一般为MB 一般为GB
性能 接近原生 弱于原生
系统支持量 单机支持上千个容器 一般几十个
隔离性 安全隔离 完全隔离
阿里云容器服务
我们通过阿里云的容器服务,配合Jekins等持续交付软件实现代码从提交到部署的完整DevOps流程,确保每次部署都会执行自动化测试从而替代低效、繁琐、迭代缓慢的传统方式。

DevOps 自动化:实现从代码变更到代码构建,镜像构建和应用部署的全流程自动化。
环境一致性:容器技术让您交付的不仅是代码,还有基于不可变架构的运行环境。
持续反馈:每次集成或交付,都会第一时间将结果实时反馈。
Docker容器提供了敏捷的应用部署解决方案,让开发和运维能够完美的配合,提升应用迭代效率。据调查,已有24%的企业在使用容器服务,另外60%以上的企业明确表示,会在未来使用容器服务。

作者信息:刘远程,杭州懒猪行Co-founder兼CTO。知名信息安全企业产品经理出身,曾多次创业并担任技术总监和CTO,具有丰富的互联网产品设计、开发和团队管理经验。

docker

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: