This documentation is for a release that is no longer maintained
See documentation for the latest supported version.1.2. 使用 Red Hat Developer Hub operator 使用自定义配置运行 Developer Hub
要使用 Developer Hub Operator 使用自定义配置运行 Red Hat Developer Hub,请创建 Backstage 自定义资源(CR):
- 挂载自定义配置映射中置备的文件。
- 注入自定义 secret 中置备的环境变量。
先决条件
-
通过使用 OpenShift CLI (
oc
),您可以访问开发人员权限,可以访问一个旨在包含 Developer Hub 实例的 OpenShift Container Platform 集群。 - 您的 OpenShift Container Platform 管理员已在 OpenShift Container Platform 中安装了 Red Hat Developer Hub Operator。
-
您已在 <
my-rhdh-project&
gt; 项目中置备了自定义配置映射和 secret。
流程
在
my-rhdh-custom-resource.yaml
文件中编写您的 Backstage CR,以使用您的自定义配置映射和 secret。例 1.2. 最少的
my-rhdh-custom-resource.yaml
自定义资源示例Copy to Clipboard Copied! Toggle word wrap Toggle overflow 例 1.3.
my-rhdh-custom-resource.yaml
自定义资源示例,带有动态插件和 RBAC 策略配置映射,以及外部 PostgreSQL 数据库 secret。Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 必填字段
- 不需要字段。您可以创建一个空的 Backstage CR,并使用默认配置运行 Developer Hub。
- 可选字段
spec.application.appConfig.configMaps
- 输入您的配置映射名称列表。
.mount 文件在
my-rhdh-app-config
配置映射中。Copy to Clipboard Copied! Toggle word wrap Toggle overflow 例 1.4. 在
my-rhdh-app-config
和rbac-policies
配置映射中挂载文件。Copy to Clipboard Copied! Toggle word wrap Toggle overflow spec.application.extraEnvs.envs
(可选)输入不是 secret 的额外环境变量,如 代理环境变量。
例 1.5. 注入
HTTP_PROXY
、HTTPS_PROXY
和NO_PROXY
环境变量。Copy to Clipboard Copied! Toggle word wrap Toggle overflow spec.application.extraEnvs.secrets
输入环境变量 secret 名称列表。
例 1.6. 在 Red Hat Developer Hub secret 中注入环境变量
spec: application: extraEnvs: secrets: - name: <my_product_secrets>
spec: application: extraEnvs: secrets: - name: <my_product_secrets>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 例 1.7. 在 Red Hat Developer Hub 和
my-rhdh-database-secrets
secret 中注入环境变量Copy to Clipboard Copied! Toggle word wrap Toggle overflow
<my_product_secrets
> 是您首选的 Developer Hub secret 名称,在 Developer Hub 中指定 secret 配置的标识符。
spec.application.extraFiles.secrets
输入您的证书文件 secret 名称和文件列表。
挂载
postgres-crt.pem
、postgres-ca.pem
和postgres-key.key
文件,该文件包含在my-rhdh-database-certificates-secrets
secret 中Copy to Clipboard Copied! Toggle word wrap Toggle overflow spec.database.enableLocalDb
启用或禁用本地 PostgreSQL 数据库。
禁用本地 PostgreSQL 数据库生成以使用外部 postgreSQL 数据库
spec: database: enableLocalDb: false
spec: database: enableLocalDb: false
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 在开发环境中,使用本地 PostgreSQL 数据库
spec: database: enableLocalDb: true
spec: database: enableLocalDb: true
Copy to Clipboard Copied! Toggle word wrap Toggle overflow spec.deployment
(可选) 输入您的部署配置。
应用 Backstage CR 来启动或更新 Developer Hub 实例。
oc apply --filename=my-rhdh-custom-resource.yaml --namespace=my-rhdh-project
$ oc apply --filename=my-rhdh-custom-resource.yaml --namespace=my-rhdh-project
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
1.2.1. 使用 Red Hat Developer Hub Operator 在自定义配置中挂载附加文件 复制链接链接已复制到粘贴板!
您可以使用 Developer Hub Operator 将额外文件(如 ConfigMap 或 Secret)挂载到首选位置的容器。
mountPath
字段指定 ConfigMap 或 Secret 挂载的位置。mount 的行为(无论是包含还是排除 subPath
)取决于 key
或 mountPath
字段的规格。
-
如果没有指定
key
和mountPath
:每个键或值都挂载为带有subPath
的文件名或内容。 -
如果使用或不使用
mountPath
指定密钥:指定的key
或 value 使用subPath
挂载。 -
如果只指定
mountPath
:包含所有键或值的目录,但没有subPath
。
-
OpenShift Container Platform 不会自动更新使用
subPath
挂载的卷。默认情况下,RHDH 操作器会监控这些 ConfigMap 或 Secret,并在发生更改时刷新 RHDH Pod。 - 为了安全起见,Red Hat Developer Hub 不授予 Operator Service Account 对 Secret 的读取访问权限。因此,不支持在不指定 mountPath 和 key 的情况下挂载 Secret 的文件。
先决条件
-
您可以使用 OpenShift CLI (
oc
)访问包含 Developer Hub 实例的 OpenShift Container Platform 集群。 - 您的 OpenShift Container Platform 管理员已在 OpenShift Container Platform 中安装了 Red Hat Developer Hub Operator。
流程
在 OpenShift Container Platform 中,使用以下 YAML 代码创建 ConfigMap 或 Secret:
例 1.8. 最小
my-project-configmap
ConfigMap 示例Copy to Clipboard Copied! Toggle word wrap Toggle overflow 例 1.9. 最小 Red Hat Developer Hub Secret 示例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 将
configMaps 名称的值设置为
ConfigMap 或secret 名称
,设置为Backstage
CR 中的 Secret 名称。例如:Copy to Clipboard Copied! Toggle word wrap Toggle overflow
<my_product_secrets
> 是您首选的 Developer Hub secret 名称,在 Developer Hub 中指定 secret 配置的标识符。