3.2. 配置项目


对于每个用户,OpenShift Dev Spaces 在项目中隔离工作区。OpenShift Dev Spaces 通过存在标签和注解来识别用户项目。启动工作区时,如果所需的项目不存在,OpenShift Dev Spaces 会使用模板名称创建项目。

您可以通过以下方法修改 OpenShift Dev Spaces 行为:

3.2.1. 配置项目名称

您可以在启动一个工作区时配置 OpenShift Dev Spaces 用来创建所需项目的项目名称模板。

有效的项目名称模板遵循以下约定:

  • &lt ;username&gt; 或 <userid > 占位符是必需的。
  • 用户名和 ID 不能包含无效字符。如果用户名或 ID 的格式与 OpenShift 对象的命名约定不兼容,OpenShift Dev Spaces 通过将不兼容的字符替换为有效的名称来更改有效名称。
  • OpenShift Dev Spaces 将 & lt;userid > 占位符评估为 14 个字符长字符串,并添加随机六个字符的后缀以防止 ID 冲突。结果保存在用户首选项中以供重复使用。
  • Kubernetes 将项目名称的长度限制为 63 个字符。
  • OpenShift 限制的长度为 49 个字符。

流程

  • 配置 CheCluster 自定义资源。请参阅 第 3.1.2 节 “使用 CLI 配置 CheCluster 自定义资源”

    spec:
      components:
        devEnvironments:
          defaultNamespace:
            template: <workspace_namespace_template_>

    例 3.3. 用户工作区项目名称模板示例

    用户工作区项目名称模板生成的项目示例

    <username>-devspaces (默认)

    user1-devspaces

    <userid>-namespace

    cge1egvsb2nhba-namespace-ul1411

    <userid>-aka-<username>-namespace

    cgezegvsb2nhba-aka-user1-namespace-6m2w2b

3.2.2. 提前置备项目

您可以提前置备工作区项目,而不依赖于自动配置。为每个用户重复上述步骤。

流程

  1. CheCluster 级别禁用自动命名空间置备:

    devEnvironments:
      defaultNamespace:
        autoProvision: false
  2. 使用以下标签和注解为 <username> 用户创建 <project_name> 项目:

    kind: Namespace
    apiVersion: v1
    metadata:
      name: <project_name> 1
      labels:
        app.kubernetes.io/part-of: che.eclipse.org
        app.kubernetes.io/component: workspaces-namespace
      annotations:
        che.eclipse.org/username: <username>
    1
    使用您选择的项目名称。
Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

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

让开源更具包容性

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

關於紅帽

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

© 2024 Red Hat, Inc.