文章目录
浏览器中的 Kubernetes 和 IDE | 交互式学习平台Killercoda
原文:Kubernetes and IDE just in your Browser | Killercoda
你想在你的浏览器中加上一个成熟的 IDE 用于实时访问 Linux | Kubernetes 环境吗?了解一下Killercoda吧!
1. 什么是Killercoda?
Killercoda 是一个交互式学习平台,允许每个人通过浏览器访问基于 Linux | Kubernetes 的环境。
2. 我们有vim,为什么还需要其他 IDE?
每个人都应该使用他们最熟悉的编辑器!如果你正在准备考试 CKA或CKAD,一定要使用像 Vim 或 Nano 这样的控制台编辑器,因为没有可视化的编辑器。
3. 什么是Theia IDE
2020年3月31日,世界上最大的开源基金会之一,Eclipse基金会宣布正式发布Eclipse Theia 1.0版本,它是一个开源,并替代微软VS Code的软件。
Theia 是一个基于 TS 开发的开源 IDE 框架,基于它我们可以开发出自己定制化的开发工具,它可以部署到云端使用,也可以打包成桌面应用。
Theia太神奇了! 它把自己描述为:
An Open, Flexible and Extensible Cloud & Desktop IDE Platform. Theia is an extensible platform to develop full-fledged multi-language Cloud & Desktop IDE-like products with state-of-the-art web technologies.
一个开放、灵活、可扩展的云桌面 IDE 平台。Theia 是一个可扩展的平台,可以利用最先进的 web 技术开发成熟的多语言 Cloud & Desktop ide 类产品。
它允许你在你的浏览器中拥有一个完整的 IDE,你甚至可以加载和使用 VSCode 扩展。
但是要确保你理解它的真正范围:
建立一个平台来构建类似于IDE的产品
**您可以使用 Theia 来构建自己的 web 或桌面 IDE。**开箱即用的版本也可以使用,但是您可能需要一些开发工作来使其适应您的需要。
Theia和VSCode对比
Theia是一款Cloud & Desktop IDE,同时可以用于桌面和云端的IDE工具,它的界面一如熟悉的VS Code,操作体验流畅自然,插件体系成熟稳定,服务内核精简高效,语言支持与框架分离,前沿的技术运用,友好的商业许可(License)。
Theia 跟 VS Code 几乎长得一模一样,不仅如此,它同样支持 VS Code 中的插件,所以你可以在 Theia 中尽情的“享用” VS Code 的插件市场。
由于Theia的操作界面与VS Code非常接近,操作体验基本一致,有不少人都会误认为这就是VS Code的线上版本。Theia从设计初期就充分考虑桌面和云的不同特点,支持容器部署和虚拟机部署,浏览器访问。
国内诸多云厂商都采用Theia方案,来进行自己的云IDE研发。
Theia项目由爱立信(Ericsson)和TypeFox于2016年作为一个项目启动,现已成为全球企业云解决方案不可或缺的一部分。
Eclipse Theia和VS Code之间最重要的区别是:
Theia的架构更具模块化,并允许更多的自定义方式,heia是专为在Desktop和Cloud上运行而设计的,
最显著的区别是:
- Theia 的架构更加模块化,允许更多的定制,
- Theia是专为在Desktop和Cloud上运行而设计的,
- Theia由与供应商无关的开源基金会(Eclipse基金会)下开发的。
对于Killercoda,真正推动我们使用 Theia 的是轻量。Theia 使用/需要大约100mb,而 VSCode 可能需要1gb + 。
4. 交互式学习平台Killercoda使用Theia
例如Killercoda 的 CKA Playground 。您将访问一个具有两个 VMs、一个CKA playground 和一个工作负载节点的环境。访问 Theia 切换到编辑器标签:
我们如何运行Theia?
我们是如何在 Killercoda 上的每个环境中添加 Theia,一个类似 vscode 的可视化编辑器。
我们在每个环境中的所有第一个虚拟机上运行 Theia。 Killercoda环境可以有一个或多个VMs。在 CKA playground Theia 运行在controlplane VM、
Theia 进程作为 root 直接运行在主机上,而不是在容器或任何抽象层中。这确保了 theia 终端和文件是100% 与环境终端相同。
如何访问文件系统?
默认情况下,Theia 被锁定到一个特定的目录。我们将其配置为在其运行的 VM 上的/root。我们认为/root 将是人们工作的主要目录。
为了访问整个文件系统,我们创建了一个符号链接文件系统。如果环境中有更多的 vm,系统就会添加更多的符号链接,比如 filesystem-host02。
Kubernetes Plugin
扩展 Vscode-Kubernetes 也是默认安装的,可以使用现有的 kubectl 上下文。
多个终端
你可以使用 Theia 也只为了他们的漂亮的可调终端界面。打开多个终端,然后移动,然后在顶部挨着彼此排列!