6.2. 挂载 ConfigMap


要将非机密配置数据挂载到工作区中,请使用 Kubernetes ConfigMap。

使用 Kubernetes ConfigMap,您可以挂载非敏感数据,如应用程序的配置值。

将 Kubernetes ConfigMap 挂载到您组织的 OpenShift Dev Spaces 实例的 OpenShift 集群中的 Dev Workspace 容器。

先决条件

  • 对目标 OpenShift 集群具有管理权限的活动 oc 会话。请参阅 CLI 入门
  • 在用户项目中,您创建新的 ConfigMap 或确定要挂载到所有 Dev Workspace 容器的现有 ConfigMap。

流程

  1. 将 ConfigMap 挂载所需的标签添加到 ConfigMap 中。

    $ oc label configmap <ConfigMap_name> \
            controller.devfile.io/mount-to-devworkspace=true \
            controller.devfile.io/watch-configmap=true
    Copy to Clipboard
  2. 可选:使用注解来配置如何挂载 ConfigMap。

    表 6.2. 可选注解
    注解描述

    controller.devfile.io/mount-path:

    指定挂载路径。

    默认为 /etc/config/ <ConfigMap_name>

    controller.devfile.io/mount-as:

    指定如何挂载资源: 文件子路径env

    默认为 文件

    mount-as:file 将键和值作为挂载路径中的文件挂载。

    mount-as:subpath 使用子路径中的键和值挂载挂载路径中的键和值。

    mount-as:env 将键和值作为环境变量挂载到所有 Dev Workspace 容器中。

例 6.2. 将 ConfigMap 作为环境变量挂载

kind: ConfigMap
apiVersion: v1
metadata:
  name: my-settings
  labels:
    controller.devfile.io/mount-to-devworkspace: 'true'
    controller.devfile.io/watch-configmap: 'true'
  annotations:
    controller.devfile.io/mount-as: env
data:
  <env_var_1>: <value_1>
  <env_var_2>: <value_2>
Copy to Clipboard

当您启动一个工作区时,&lt ;env_var_1&gt; 和 < env_var_ 2> 环境变量将在 Dev Workspace 容器中提供。

6.2.1. 挂载 Git 配置

注意

user.nameuser.email 字段会自动设置为 git 供应商中的 gitconfig 内容,连接到 Git-provider 访问令牌 或通过 OAuth 生成的令牌,如果供应商的用户配置集页面中设置了用户名和电子邮件。

按照下面的说明在工作区中挂载 Git 配置文件。

先决条件

  • 已登陆到集群。

流程

  1. 准备新的 OpenShift ConfigMap。

    kind: ConfigMap
    apiVersion: v1
    metadata:
      name: workspace-userdata-gitconfig-configmap
      namespace: <user_namespace> 
    1
    
      labels:
        controller.devfile.io/mount-to-devworkspace: 'true'
        controller.devfile.io/watch-configmap: 'true'
      annotations:
        controller.devfile.io/mount-as: subpath
        controller.devfile.io/mount-path: /etc/
    data:
      gitconfig: <gitconfig content> 
    2
    Copy to Clipboard
    1
    用户命名空间。访问 https://<openshift_dev_spaces_fqdn&gt; /api/kubernetes/namespace 来获取您的 OpenShift Dev Spaces 用户命名空间,名为。
    2
    gitconfig 文件内容的内容。
  2. 应用 ConfigMap。

    $ oc apply -f - <<EOF
    <ConfigMap_prepared_in_step_1>
    EOF
    Copy to Clipboard

验证

  1. 使用 Git 提供程序主机的远程 Git 存储库的 URL,启动新的工作区
  2. 启动工作区后,在 tools 容器中运行一个新的终端,并运行 git config --get-regexp user ""。您的 Git 用户名和电子邮件应当会显示在输出中。
返回顶部
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

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

让开源更具包容性

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

關於紅帽

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

Theme

© 2025 Red Hat