1.2. 使用 Helm Chart 在 OpenShift Container Platform 上安装 Red Hat Developer Hub
您可以使用以下方法之一在 OpenShift Container Platform 上安装 Red Hat Developer Hub:
- OpenShift Container Platform 控制台
- Helm CLI
您可以使用 Helm Chart 在 Red Hat OpenShift Container Platform Web 控制台中安装 Developer Hub。
Helm 是 OpenShift Container Platform 上的软件包管理器,它提供以下功能:
- 使用自定义 hook 应用常规应用程序更新
- 管理复杂应用程序的安装
- 提供您可以在公共和私有服务器上托管的图表
- 支持回滚到以前的应用程序版本
Red Hat Developer Hub Helm Chart 位于 OpenShift Dedicated 和 OpenShift Container Platform 上的 Helm 目录中。
先决条件
- 已登陆到 OpenShift Container Platform 帐户。
-
具有 OpenShift Container Platform
admin角色的用户已在项目中配置了适当的角色和权限来创建应用程序。如需有关 OpenShift Container Platform 角色的更多信息,请参阅使用 RBAC 定义和应用权限。 - 您已在 OpenShift Container Platform 中创建了一个项目。有关在 OpenShift Container Platform 中创建项目的更多信息,请参阅 Red Hat OpenShift Container Platform 文档。
流程
- 从 Developer Hub web 控制台的 Developer 视角,点 +Add。
- 在 Developer Catalog 面板中点击 Helm Chart。
- 在 Filter by keyword 框中,输入 Developer Hub 并点 Red Hat Developer Hub 卡。
- 在 Red Hat Developer Hub 页面中,单击 Create。
-
在集群中,复制 OpenShift Container Platform 路由器主机(例如:
apps.<clusterName>.com)。 选择单选按钮,以使用表单视图或 YAML 视图来配置 Developer Hub 实例。Form 视图会被默认选择。
使用 Form view
-
要使用 Form 视图配置实例,请转至 Backstage 实例中 Root Schema
global Enable service authentication,并将 OpenShift Container Platform 路由器主机粘贴到表单上的字段。
-
要使用 Form 视图配置实例,请转至 Backstage 实例中 Root Schema
使用 YAML 视图
要使用 YAML 视图配置实例,请将 OpenShift Container Platform 路由器主机名粘贴到
global.clusterRouterBase参数值中,如下例所示:global: auth: backend: enabled: true clusterRouterBase: apps.<clusterName>.com # other Red Hat Developer Hub Helm Chart configurations
如果需要,请编辑其他值。
注意有关主机的信息被复制,并可以被 Developer Hub 后端访问。
当自动生成 OpenShift Container Platform 路由时,路由的主机值会被推断出来,同一主机信息发送到 Developer Hub。另外,如果在自定义域上存在 Developer Hub,通过使用值手动设置主机,则自定义主机具有优先权。
- 点 Create 并等待数据库和 Developer Hub 启动。
点 Open URL 图标以使用 Developer Hub 平台启动。
如果 Developer Hub 容器无法访问配置文件,则 developer-hub Pod 可能会处于 CrashLoopBackOff 状态。这个错误由以下日志表示:
Loaded config from app-config-from-configmap.yaml, env
...
2023-07-24T19:44:46.223Z auth info Configuring "database" as KeyStore provider type=plugin
Backend failed to start up Error: Missing required config value at 'backend.database.client'
要解决错误,请验证配置文件。
您可以使用 Helm CLI 在 Red Hat OpenShift Container Platform 上安装 Red Hat Developer Hub。
先决条件
-
已在工作站上安装了 OpenShift CLI (
oc)。 - 已登陆到 OpenShift Container Platform 帐户。
- 具有 OpenShift Container Platform admin 角色的用户已在项目中配置了适当的角色和权限来创建应用程序。如需有关 OpenShift Container Platform 角色的更多信息,请参阅使用 RBAC 定义和应用权限。
- 您已在 OpenShift Container Platform 中创建了一个项目。有关在 OpenShift Container Platform 中创建项目的更多信息,请参阅 Red Hat OpenShift Container Platform 文档。
- 已安装 Helm CLI 工具。
流程
创建并激活 < rhdh> OpenShift Container Platform 项目:
NAMESPACE=<emphasis><rhdh></emphasis> oc new-project ${NAMESPACE} || oc project ${NAMESPACE}安装 Red Hat Developer Hub Helm Chart:
helm upgrade redhat-developer-hub -i https://github.com/openshift-helm-charts/charts/releases/download/redhat-redhat-developer-hub-1.2.6/redhat-developer-hub-1.2.6.tgz使用 OpenShift Container Platform 集群中的 Developer Hub 数据库密码和路由器基本 URL 值配置 Developer Hub Helm Chart 实例:
PASSWORD=$(oc get secret redhat-developer-hub-postgresql -o jsonpath="{.data.password}" | base64 -d) CLUSTER_ROUTER_BASE=$(oc get route console -n openshift-console -o=jsonpath='{.spec.host}' | sed 's/^[^.]*\.//') helm upgrade redhat-developer-hub -i "https://github.com/openshift-helm-charts/charts/releases/download/redhat-redhat-developer-hub-1.2.6/redhat-developer-hub-1.2.6.tgz" \ --set global.clusterRouterBase="$CLUSTER_ROUTER_BASE" \ --set global.postgresql.auth.password="$PASSWORD"显示正在运行的 Developer Hub 实例 URL:
echo "https://redhat-developer-hub-$NAMESPACE.$CLUSTER_ROUTER_BASE"
验证
- 在浏览器中打开正在运行的 Developer Hub 实例 URL,以使用 Developer Hub。
其他资源