5.3. 定义一个常见的 IDE


虽然 第 2.3.2 节 “IDE 的 URL 参数” 可让您使用支持的 IDE 个人选择启动工作区,但您可能会更轻松地为同一源代码 Git 仓库的所有工作区定义相同的 IDE。要做到这一点,请使用 che-editor.yaml 文件。此文件甚至支持详细的 IDE 配置。

提示

如果您希望使用 Microsoft Visual Studio Code 以外的相同 IDE 启动大多数或所有机构工作区 - Open Source,则一个替代方法是让机构的 OpenShift Dev Spaces 实例的管理员指定另一个支持的 IDE 作为 OpenShift Dev Spaces 实例级别的默认 IDE。这可以通过 CheCluster 自定义资源中的 .spec.devEnvironments.defaultEditor 来完成。

5.3.1. 设置 che-editor.yaml

通过使用 che-editor.yaml 文件,您可以为团队设置共同的默认 IDE,并为项目源代码提供最合适的 IDE。当您需要为特定源代码 Git 存储库设置不同的 IDE 默认而不是机构 OpenShift Dev Spaces 实例的默认 IDE 时,您还可以使用 che-editor.yaml 文件。

流程

  • 在项目源代码的远程 Git 存储库中,使用指定相关参数的行创建一个 /.che/che-editor.yaml 文件,如下一部分所述。

验证

  1. 使用 Git 存储库的克隆启动新的工作区
  2. 验证在启动工作区的浏览器选项卡中指定的 IDE 加载。

5.3.2. che-editor.yaml 的参数

che-editor.yaml 中选择 IDE 的最简单方法是从支持的 IDE 表中指定 IDE 的 id

表 5.2. 支持的 IDE
IDEid备注

Microsoft Visual Studio Code - 开源

che-incubator/che-code/latest

这是在没有使用 URL 参数或 che-editor.yaml 时在新工作区中载入的默认 IDE。

JetBrains IntelliJ IDEA Community Edition

che-incubator/che-idea/latest

技术预览

Eclipse Theia

eclipse/che-theia/latest

弃用并将在以后的版本中删除。

例 5.1. ID 从插件 registry 中选择一个 IDE

id: che-incubator/che-idea/latest

作为提供 id 参数的替代选择,che-editor.yaml 文件支持对另一个 che-editor.yaml 文件的 URL 的引用,或插件 registry 之外的 IDE 的 内联 定义:

例 5.2. 参考 指向远程 che-editor.yaml 文件

reference: https://<hostname_and_path_to_a_remote_file>/che-editor.yaml

例 5.3. inline 为没有插件 registry 的自定义 IDE 指定一个完整的定义

inline:
  schemaVersion: 2.1.0
  metadata:
    name: JetBrains IntelliJ IDEA Community IDE
  components:
    - name: intellij
      container:
        image: 'quay.io/che-incubator/che-idea:next'
        volumeMounts:
          - name: projector-user
            path: /home/projector-user
        mountSources: true
        memoryLimit: 2048M
        memoryRequest: 32Mi
        cpuLimit: 1500m
        cpuRequest: 100m
        endpoints:
          - name: intellij
            attributes:
              type: main
              cookiesAuthEnabled: true
              urlRewriteSupported: true
              discoverable: false
              path: /?backgroundColor=434343&wss
            targetPort: 8887
            exposure: public
            secure: false
            protocol: https
      attributes: {}
    - name: projector-user
      volume: {}

对于更复杂的场景,che-editor.yaml 文件支持 registryUrl 并覆盖 参数:

例 5.4. registryUrl 指向自定义插件 registry,而不是默认的 OpenShift Dev Spaces 插件 registry

id: <editor_id> 1
registryUrl: <url_of_custom_plugin_registry>
1
自定义插件 registry 中的 IDE ID。

例 5.5. 覆盖 IDE 的一个或多个定义的属性的默认值

... 1
override:
  containers:
    - name: che-idea
      memoryLimit: 1280Mi
      cpuLimit: 1510m
      cpuRequest: 102m
    ...
1
id:, registryUrl:, 或 reference:.
Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.