设为首页收藏本站

LUPA开源社区

 找回密码
 注册
文章 帖子 博客

为什么Sandstorm不能运行Docker应用

2014-8-22 11:28| 发布者: joejoe0332| 查看: 2714| 评论: 0|原作者: 郭蕾|来自: InfoQ

摘要: Sandstorm是 由前谷歌工程师Kenton Varda开发的一个开源的个人云平台项目,Sandstorm允许开发者在自己的服务器上通过一个类似App Store的界面来安装自己的应用。它的目标是帮助用户快速简单的在自己的服务器上安装并 ...

  Sandstorm是 由前谷歌工程师Kenton Varda开发的一个开源的个人云平台项目,Sandstorm允许开发者在自己的服务器上通过一个类似App Store的界面来安装自己的应用。它的目标是帮助用户快速简单的在自己的服务器上安装并运行Web应用。近日,Kenton发表了一篇名为《为什么Sandstorm不能运行Docker应用》的文章。


  文章首先指 出,虽然Sandstorm和Docker的底层技术都是一样的(都是基于相同的Linux内核特性),但它们是两个完全不同的平台。关于 Standstorm为什么不能运行Docker应用的问题就像为什么Android不能运行Linux桌面应用的问题一样,它们本身的出发点就不一样。 Docker是设计用来在容器内安装并运行现有的服务器软件包,站在应用的角度来看,Docker其实就是Linux;站在用户的角度来看,Docker 更像是传统的虚拟机,只不过它性能更好。而Sandstorm做的事情完全不一样,Sandstorm的目标用户并不是开发人员或者管理员,他们可能不知 道如何使用数据库或者命令行,Standstorm支持的应用有以下几个特点:


  1. 每个应用都必须有用户界面,用户可以在界面中完成所有的配置选项。
  2. 应用必须能够独立安装并管理数据库。
  3. 应用需要和Sandstorm统一的登录系统相集成。
  4. 用户不需要为不同的应用管理不同的共享模式,Sandstorm支持细粒度的容器,以保证每一个文件都可以在一个单独的容器中。
  5. 授权操作需要通过一种用户可以理解的方式来展现。
  6. 可以一键或者自动完成应用的更新。
  7. 用户会不时地安装恶意程序,Sandstorm需要保证系统的安全。


  文章接着解释 了为什么Standstorm不直接使用Docker而是自己开发容器。其实Sandstorm使用了很多和Docker相同的技术,比如 namespaces、cgroups。但是当涉及到用户空间的工具时,Standstorm发现他们并不需要Docker,Docker工具被设计用来 运行Linux软件,而Sandstorm上的应用必须为Sandstorm环境量身定制,所以Standstorm需要提供尽可能少的配置以保证核心系 统简单。设置一个Sandstorm sandbox,基于Linux系统的一些函数,可能只需要几百行的代码,但是如果使用Docker,取而代之的是几百行的配置,并且增加了额外的依赖以 及维护,另外Docker的也不能满足Sandstorm的一些个性需求。


  文章最后也表示Docker很强大,Sandstorm在开发中也使用了Docker,他们很希望看到Docker能替代传统的IaaS解决方案。


转自 http://www.infoq.com/cn/news/2014/08/sandstorm-not-run-docker-apps?utm_campaign=infoq_content&utm_source=infoq&utm_medium=feed&utm_term=global


酷毙

雷人

鲜花

鸡蛋

漂亮
  • 快毕业了,没工作经验,
    找份工作好难啊?
    赶紧去人才芯片公司磨练吧!!

最新评论

关于LUPA|人才芯片工程|人才招聘|LUPA认证|LUPA教育|LUPA开源社区 ( 浙B2-20090187 浙公网安备 33010602006705号   

返回顶部