Linux学习|Gentoo/Arch/FreeBSDDocker容器我用 Linux

在线 IDE 之 Eclipse Che 再体验

2017-02-10  本文已影响777人  左蓝

上一次体验 Eclipse Che 是在半年前,我一直对这种基于网页的 IDE 有种“好感”,毕竟以前中学没有自己电脑的时候我就是靠着这些在线 IDE 干活的。

源代码:https://github.com/eclipse/che
官网:https://eclipse.org/che/

虽然随着云计算浪潮的颠覆原来那几家基于 PaaS 的在线 IDE 服务商都已经基本销声匿迹了,但也不乏转型得比较成功的公司,比如 Koding 以及 Codenvy。至于像 Cloud9 和 Codeanywhere 这种在前几年混得风生水起的在线 IDE,因为在 Docker 时代中反应太慢,转型实在不理想,现在半死不活的。话说回来,Docker 的普及也真是太快了。

至于一些甚至连商业计划都没有的开源在线 IDE,我连名字都忘了,只依稀记得个界面,和现在的 Coding.net 的在线 IDE 有点像。


上面废话了一大段,只是想表达,Eclipse Che 能活下来真心不容易,更让我惊讶的是不仅活下来还一直保持活跃开发。老实说最初还叫 Codenvy 社区版的时候简直垃圾得不能更彻底,后来经过两年左右的几千次代码提交,我也一直保持关注,每次正式版本发布都会尽快体验,虽然每次结果都很糟糕就是了。

尽管如此,Che 还是迎来了 5.0 的发布,这得益于 Codenvy 团队的开放,要是没有他们慷慨的开源贡献,我们也不会体验到这神奇的 IDE。

现在的 Eclipse Che 已经完全融入 Docker 了,和之前基于本地 JRE 运行的情况大有不同。

开始之前肯定先得有 Docker,至于 Docker Compose,Che 已经通过拉取 Compose 镜像来替代。

先来启动 Che 吧,一睹芳容:

docker run -it --rm \
    -v /var/run/docker.sock:/var/run/docker.sock \
    -v /home/user/eclipse-che/workspace/:/data \
    eclipse/che start --fast

除非你对你的网络很有信心,不然我建议你还是加上 --fast 参数启动,这个参数可以去掉很多网络检查,毕竟网络检查在天朝局域网中基本是不可能通过的。

第一次运行大概会拉取几个镜像,总之要喝一杯茶的功夫(这还是用了中科大镜像源的速度,官方源的话大概要拉一天吧):

WARN: Bound 'eclipse/che' to 'eclipse/che:5.2.2'
WARNING: No swap limit support
INFO: (che cli): 5.2.2 - using docker 1.13.1 / native
WARN: CHE_HOST (172.17.0.1) overridden by che.env (127.0.0.1)
INFO: (che config): Generating che configuration...
INFO: (che config): Customizing docker-compose for running in a container
INFO: (che start): Starting containers...
INFO: (che start): Services booting...
INFO: (che start): Server logs at "docker logs -f che"
INFO: (che start): Booted and reachable
INFO: (che start): Ver: 5.2.2
INFO: (che start): Use: http://127.0.0.1:8080
INFO: (che start): API: http://127.0.0.1:8080/swagger

看到上面信息就是启动完成了,相比之前的 4.0 真是轻松不少,也去掉了让人担心的 --privileged 参数,看起来与 Docker 整合程度更高了,已经看不到非容器组件了。

工作区界面

界面在 4.0 的时候重写过一次,这次 5.0 没有大改动,但是一些细节还是有变动的。而且加入了 Stacks 功能,这对于自动化测试部署而言简直神器,打完代码一个按钮就搞定了测试和部署,一气呵成。嗯,看起来很美好,坏笑。

Eclipse Che 号称下一代 Eclipse,万物皆容器,所以整个 IDE 从头到尾都是在容器中运行,这就意味着你第一次运行时需要拉取镜像,每一个工作区的运行时都被打包在镜像中,使用 Eclipse Che 时不会再有安装环境的概念,这些工作都被 IDE 开发团队做了,你只需要告诉 IDE 你需要什么环境就可以了,一切只需要等待下载完成。

比如我新建一个 Android 的开发环境,直接选择就是了:

添加工作区

接下来会拉取整个 Android 开发需要的运行时,包括 JDK、SDK 等等,整个下载过程不支持断点下载,尽量保证你的网络畅通。

REPOSITORY                          TAG                 IMAGE ID            CREATED             SIZE
machine_snapshot_2v73kh60wpo6ho04   latest              45d02b1e51c3        5 days ago          1.15 GB
machine_snapshot_vyipng4306q7e153   latest              a2768fc68b27        6 days ago          1.13 GB
eclipse/che-server                  5.2.2               75f655517886        6 days ago          316 MB
eclipse/che                         latest              dd03817a34ff        6 days ago          51.1 MB
eclipse/ubuntu_android              latest              0832352eb5b2        8 days ago          3.41 GB
eclipse/ubuntu_python               latest              13e641acf2db        8 days ago          1.02 GB
eclipse/ubuntu_go                   latest              a408f116a30a        8 days ago          998 MB
eclipse/che-init                    5.2.2               e9b30eaa7d83        8 days ago          55 MB
eclipse/che-ip                      5.2.2               d3ac85b1a8ab        8 days ago          4.8 MB

Android 开发镜像解压后显示有 3.41 GB,很大,但是实际上不会占用硬盘太多空间,自己了解一下联合挂载,我闭嘴。


上面说了 Che 的基本情况,现在进入编辑器部分。

编辑器

总结一下我的体验:

eclipse-che/workspacexcvu1xelfs68uv40_machine2h1yobhxabkjwudo_che_dev-machine
风骚无比的容器命名以及快照命名

期待下次见面

今晚对新版的 Che 体验结果就是:很好玩的工具,依旧不适合用来开发。

美好的愿景

虽然 Eclipse Che 还不完善,但是商业版的 Codenvy 却很不错,值得一试。此外 Koding 啦,Cloud9 啦,还有国内的 Coding.net 都是不错的,如果有需求的话花点小钱也是可以的。就目前而言还没有完完全全的在线开发系统。

上一篇 下一篇

猜你喜欢

热点阅读