docker 是什么?

2015-05-23 16:17:48 +08:00
 holinhot

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

不知道我理解对不对

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

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

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

类似的做法,在google的lmctfy里也是这么做的。
monnand
2015-05-25 01:45:19 +08:00
@monnand 有必要提一下,docker现在还是支持通过调用lxc的方式来创建container,但是不是默认的方式
tabris17
2015-05-25 09:11:46 +08:00
@monnand 明白了。就是绕过LXC直接调用底层接口了

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

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

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

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

© 2021 V2EX