docker 是什么?

2015 年 5 月 23 日
 holinhot

一直没关注这个开始完全搞不明白
我现在的理解是他就是一个虚拟机
比如我在宿主机上安装docker并在docker下centos装上lnmp做成镜像然后可以很容易的以的把这个lnmp环镜移动到其他linux宿主机上吧。
说白了不就一微型虚拟机

不知道我理解对不对

大量部署分发到不同节点确实很好

7078 次点击
所在节点    Docker
17 条回复
Septembers
2015 年 5 月 23 日
微服务
jemyzhang
2015 年 5 月 23 日
container?可不可以这样理解呢
yyfearth
2015 年 5 月 23 日
@holinhot 我觉得Docker不像虚拟机 更像是一个Sandbox沙箱
跑起来不像一般的虚拟机那样虚拟出一台机器 而仅仅是把不同的环境用软件的方式隔离开
官方叫做 container 技术
tabris17
2015 年 5 月 23 日
底层基于LXC,也就是操作系统提供的一中沙箱功能。隔离了软件的运行环境,但是内核还是共享的,和虚拟机不一样。
boro
2015 年 5 月 23 日
和Rocket比,哪个更具优势些?
leopard080264
2015 年 5 月 23 日
docker就是个煤气灶,应用就是锅加菜
tobyxdd
2015 年 5 月 23 日
sandboxie
liul85
2015 年 5 月 23 日
比虚拟机更轻量,更易部署和迁移,特别是在分布式系统中。
kaneg
2015 年 5 月 23 日
这货根本就不是虚拟机,跟普通经常没啥本质区别,只是运行在另一个命名空间而已,所以它目前只能是Linux上的一种技术。不过它给使用者一种错觉像是运行了另一个独立的OS,所以很多人把它当虚拟机用
crny520
2015 年 5 月 24 日
monnand
2015 年 5 月 24 日
@tabris17 docker 去年的时候就已经不用lxc了
endoffight
2015 年 5 月 24 日
一个更安全高效合理的部署方式
tabris17
2015 年 5 月 24 日
@monnand 擦,世界变化真快,那用啥?
nekoyaki
2015 年 5 月 24 日
@monnand 同问,用的是啥
monnand
2015 年 5 月 25 日
@tabris17
@nekoyaki 是libcontainer,详细情况可以google一下。

简单说来,因为cgroup的操作完全就是对文件系统的操作,而namespace的操作也可以直接通过系统调用完成,所以就没必要中间再放个lxc了。

类似的做法,在google的lmctfy里也是这么做的。
monnand
2015 年 5 月 25 日
@monnand 有必要提一下,docker现在还是支持通过调用lxc的方式来创建container,但是不是默认的方式
tabris17
2015 年 5 月 25 日
@monnand 明白了。就是绕过LXC直接调用底层接口了

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://v2ex.ih06.com/t/193205

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX