6.2. 挂载 ConfigMap
要将非机密配置数据挂载到工作区中,请使用 Kubernetes ConfigMap。
使用 Kubernetes ConfigMap,您可以挂载非敏感数据,如应用程序的配置值。
将 Kubernetes ConfigMap 挂载到您组织的 OpenShift Dev Spaces 实例的 OpenShift 集群中的 Dev Workspace 容器。
先决条件
-
对目标 OpenShift 集群具有管理权限的活动
oc会话。请参阅 CLI 入门。 -
在用户项目中,您创建新的 ConfigMap 或确定要挂载到所有
Dev Workspace容器的现有 ConfigMap。
流程
将 ConfigMap 挂载所需的标签添加到 ConfigMap 中。
oc label configmap <ConfigMap_name> \ controller.devfile.io/mount-to-devworkspace=true \ controller.devfile.io/watch-configmap=true$ oc label configmap <ConfigMap_name> \ controller.devfile.io/mount-to-devworkspace=true \ controller.devfile.io/watch-configmap=trueCopy to Clipboard Copied! Toggle word wrap Toggle overflow 可选:使用注解来配置如何挂载 ConfigMap。
Expand 表 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 作为环境变量挂载
当您启动一个工作区时,< ;env_var_1> 和 < env_var_ 2> 环境变量将在 Dev Workspace 容器中提供。
6.2.1. 挂载 Git 配置 复制链接链接已复制到粘贴板!
user.name 和 user.email 字段会自动设置为 git 供应商中的 gitconfig 内容,连接到 Git-provider 访问令牌 或通过 OAuth 生成的令牌,如果供应商的用户配置集页面中设置了用户名和电子邮件。
按照下面的说明在工作区中挂载 Git 配置文件。
先决条件
- 已登陆到集群。
流程
准备新的 OpenShift ConfigMap。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 应用 ConfigMap。
oc apply -f - <<EOF <ConfigMap_prepared_in_step_1> EOF
$ oc apply -f - <<EOF <ConfigMap_prepared_in_step_1> EOFCopy to Clipboard Copied! Toggle word wrap Toggle overflow
验证
- 使用 Git 提供程序主机的远程 Git 存储库的 URL,启动新的工作区。
-
启动工作区后,在
tools容器中运行一个新的终端,并运行git config --get-regexp user ""。您的 Git 用户名和电子邮件应当会显示在输出中。