猿问

请教一下,可以在docker容器里跑windows么?

可以在docker容器里跑windows么


繁星coding
浏览 3528回答 3
3回答

回首忆惘然

Docker并不是全能的,设计之初也不是KVM之类虚拟化手段的替代品,简单总结几点:1.Docker是基于Linux 64bit的,无法在32bit的linux/Windows/unix环境下使用2.LXC是基于cgroup等linux kernel功能的,因此container的guest系统只能是linux base的3.隔离性相比KVM之类的虚拟化方案还是有些欠缺,所有container公用一部分的运行库4.网络管理相对简单,主要是基于namespace隔离5.cgroup的cpu和cpuset提供的cpu功能相比KVM的等虚拟化方案相比难以度量(所以dotcloud主要是按内存收费)6.docker对disk的管理比较有限7.container随着用户进程的停止而销毁,container中的log等用户数据不便收集针对1-2,有windows base应用的需求的基本可以pass了; 3-5主要是看用户的需求,到底是需要一个container还是一个VM, 同时也决定了docker作为 IaaS 不太可行。针对6,7虽然是docker本身不支持的功能,但是可以通过其他手段解决(disk quota, mount --bind)。总之,选用container还是vm, 就是在隔离性和资源复用性上做权衡
随时随地看视频慕课网APP
我要回答