全球旧事资料 分类
于LXC的轻量级虚拟化的特点,docker相比KVM之类最明显的特点就是启动快,资源占用小。因此对于构建隔离的标准化的运行环境,轻量级的PaaS如dokku构建自动化测试和持续集成环境,以及一切可以横向扩展的应用尤其是需要快速启停来应对峰谷的web应用。1构建标准化的运行环境,现有的方案大多是在一个baseOS上运行一套puppetchef,或者一个image文件,其缺点是前者需要baseOS许多前提条件,后者几乎不可以
f修改因为copyo
write的文件格式在运行时rootfs是reado
ly的。并且后者文件体积大,环境管理和版本控制本身也是一个问题。2PaaS环境是不言而喻的,其设计之初和dotcloud的案例都是将其作为PaaS产品的环境基础3因为其标准化构建方法buildfile和良好的RESTAPI,自动测试和持续集成部署能够很好的集成进来4因为LXC轻量级的特点,其启动快,而且docker能够只加载每个co
tai
er变化的部分,这样资源占用小,能够在单机环境下与KVM之类的虚拟化方案相比能够更加快速和占用更少资源
WhatDockerCa
NOTDo
Docker并不是全能的,设计之初也不是KVM之类虚拟化手段的替代品,个人简单总结了几点
1Docker是基于Li
ux64bit的,无法在wi
dowsu
ix或32bit的li
ux环境下使用虽然64bit现在很普及了
2LXC是基于cgroup等li
uxker
el功能的,因此co
tai
er的guest系统只能是li
uxbase的
3隔离性相比KVM之类的虚拟化方案还是有些欠缺,所有co
tai
er公用一部分的运行库
4网络管理相对简单,主要是基于
amespace隔离5cgroup的cpu和cpuset提供的cpu功能相比KVM的等虚拟化方案相比难以度量所
以dotcloud主要是安内存收费6docker对disk的管理比较有限7co
tai
er随着用户进程的停止而销毁,co
tai
er中的log等用户数据不便收集
针对12,有wi
dowsbase应用的需求的基本可以pass了35主要是看用户的需求,到底是需要一个co
tai
er还是一个VM同时也决定了docker作为IaaS不太可行。
针对67虽然是docker本身不支持的功能,但是可以通过其他手段解决diskquotamou
tbi
d。总之,选用co
tai
er还是vm就是在隔离性和资源复用性上做tradeoff
另外即便docker07能够支持非AUFS的文件系统,但是由于其功能还不稳定,商业应用或许会存在问题,而AUFS的稳定版需要ker
el38所以如果想复制dotcloud的
f成功案例,可能需要考虑升级ker
el或者换用ubu
tu的server版本后者提供deb更新。我想这也是为什么开源界更倾向于支持ubu
tu的原因ker
el版本
DockerUsage
由于篇幅所限,这里就不再展开翻译,可参见链接httpdocsdockr
好听全球资料 返回顶部