BT

如何利用碎片时间提升技术认知与能力? 点击获取答案

CodeCube提供可共享、可运行的代码示例

| 作者 Brian Rinaldi 关注 0 他的粉丝 ,译者 孙镜涛 关注 2 他的粉丝 发布于 2013年11月5日. 估计阅读时间: 2 分钟 | CNUTCon 了解国内外一线大厂50+智能运维最新实践案例。

CodeCube是一个新服务和开源项目,旨在让开发者能够通过浏览器以一种安全的方式分享并运行代码示例从而提升协作。

最初发布的服务可以从codecube.io上获取,支持Ruby、Python、Go及C代码的分享和运行。创建者Harry Marr还将该版本在GitHub上开源了,该开源项目不需要使用任何特定的许可。

在该项目的最近一个公告中,Harry注意到许多开发社区使用Gists进行协作和代码分享,它是一个来自于GitHub的服务允许分享代码的片段和粘贴。但是,如果开始没有下载并建立本地的共享代码,那么Gists并不具有运行的能力。正如Harry所声明的“输出的再生通常是非常困难的,因为这对代码所运行的环境具有很强的依赖性”。

在创建CodeCube的时候,Harry还受到了Go(Go Playground)和JavaScript(JSFiddle)开发者所使用的那些相似工具的启发,借助于这些工具开发者能够在编辑器中运行代码。他的目标是为其他的语言创建这种工具,但是必须克服在服务器上任意运行用户提交的代码所带来的安全问题。

为了克服这些安全限制,CodeCube使用了一个名为Docker的开源项目。正如Harry所解释的:

[Docker]能够在很短的时间内创建或者卸载相对安全的沙箱环境。每次当一段代码要运行的时候,就会创建并启动一个Docker容器用于运行这些不被信任的代码,运行完成之后该容器就会被杀死并销毁。

CodeCube服务和项目现在已经能够使用了,将来的更新计划包含用户认证、协作编辑,支持其他的语言并提升用户界面体验。

在Hacker News和Twitter上它收到了最多的关注,同时这些网站上对该公告的反应也几乎都是正面的。

查看英文原文:CodeCube Offers Shareable, Runnable Code Samples

评价本文

专业度
风格

您好,朋友!

您需要 注册一个InfoQ账号 或者 才能进行评论。在您完成注册后还需要进行一些设置。

获得来自InfoQ的更多体验。

告诉我们您的想法

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我
社区评论

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

讨论

登陆InfoQ,与你最关心的话题互动。


找回密码....

Follow

关注你最喜爱的话题和作者

快速浏览网站内你所感兴趣话题的精选内容。

Like

内容自由定制

选择想要阅读的主题和喜爱的作者定制自己的新闻源。

Notifications

获取更新

设置通知机制以获取内容更新对您而言是否重要

BT