Eclipse Che 5.0 会带来对 Docker Compose 的支持、Workspace Agents 等特性

  • Sergio De Simone
  • 张卫滨

2016 年 11 月 23 日

话题:语言 & 开发

在第一届CheConf16上,有一个专门针对Eclipse Che的用户会议,这是一个容器化的便携开发工作空间,Codenvy CEO 兼 Che 项目的领导者 Tyler Jewell宣布了 Eclipse Che 5.0。它预期会在年底之前发布,将会引入对 Docker Compose 的支持,以及 Workspace Agents 等特性。

根据今年早些时候的介绍,Eclipse Che的特性在于它是一个云端的 IDE、工作空间服务器,另外还有借助容器实现的运行时便携性。Jewell认为Eclipse Che 项目的前六个月是非常成功的。

在过去的两个月中,Che 的使用时间超过了 600,000 小时,就在上一周,我们看到它有着 100,000 小时的使用量,来自超过 1,500 个 IP 地址。我们目前有 70 个贡献者,3,300 个 GitHub star 和 550 个 GitHub fork。

Eclipse Che 的基础理念在于工作空间和运行时栈。运行时栈为应用提供环境,工作空间则集成了项目和运行时栈,提供了一致和简便易用的开发环境。因为基于 Docker 镜像构建,所以运行时能够让创建或迁移工作空间变得非常简便。工作空间托管在 Che 服务器上,可以通过基于浏览器的 IDE 或 REST API 进行访问,也可以通过到桌面 IDE 的 SSH 连接来进行访问。

如前所述,Che 5.0 将会带来对 Docker Compose 文件的支持,用来描述由不同容器所组成的 Docker 应用,这些容器会用来实现应用的各种服务。借助 Docker Compose,我们通过一条命令就能从配置文件中创建和启动所有的服务。Che 5.0 支持 Docker Compose 意味着开发人员不仅能够从 Che 中选择已有的运行时栈,还能提供 Compose 文件来创建自定义的栈。

Che 5.0 另外一个重要的特性就是 Workspace Agent,通过它开发人员能够抓取一个生产环境,得到现成的 Docker 镜像,例如 Ubuntu 发布版、虚拟机等等,并注入开发特定的特性,比如 SSH 访问、对终端的支持、智能感知等。实际上,它就是将生产的工作空间转换为开发的工作空间。

Workspace Agent 能够与任何 Docker 镜像协作使用,唯一的需求在于 Docker 镜像要预先安装 bash 并且没有处于终止的状态。开发人员也可以创建自己的 agent。在 Workspace Agent 特性推出之前,开发人员必须要从 Che 服务器上选择已有的、为开发准备好的镜像。

为了简化使用,Che 引入了 Stack Editor 和 Chedir。Stack Editor 是一个可视化的工具,它允许开发人员进行如下的操作:

  • 创建机器,它会转换到一个 Docker Compose 文件中;
  • 注入 agent;
  • 定义环境变量;
  • 控制内存的可用性等。

Stack Editor dashboard 可能会包含一项功能,用来校验所创建的栈是否能够正常工作,比如机器能够正确创建、agent 能够正常注入等。

Chedir 是一个工具,旨在提供可配置和可再生的工作空间,按照 Jewell 的说法,这类似于针对 Che 的 Vagrant。Chedir 能够让开发人员更容易地从 Git 克隆 repo,然后将其安装到本地 Che 服务器中,如果没有这样的服务器的话,会自动启动一台。所有相关的细节都可以存储在一个 Chedir 配置文件中,如果没有配置的话,将会使用合理的默认值。

最后,Che 5.0 另外一项重要的特性就是采用了开放语言协议(Open Language Protocol),它是最近由微软开源的。语言服务器协议(Language Server Protocol)致力于解决现有几十种语言的源码编辑器所面临的问题,它们在语法高亮、自动补全、重构等方面有着不同的需求。Che 5.0 采用这个协议,以便于在当前版本中支持 C#、PHP、Java、Go 以及 CSS。在明年第一季度预计将会支持 Rust、JavaScript、 TypeScript、Groovy 和 Haxe。

Che 5.0 还会带来很多的特性,比如支持 RedHat OpenShift、增强对 PHP 的支持以及对桌面 IDE 的兼容性等等。

Che 第 7 个里程碑版本(M7)已经开放下载了,而 GA 版本还需要 6 到 10 周的时间。

查看英文原文:Eclipse Che 5.0 Brings Docker Compose Support, Workspace Agents, and More

语言 & 开发