3.2. 在使用 Helm Chart 的部分断开连接的环境中在 OpenShift Container Platform 上安装 Red Hat Developer Hub


如果您的网络可以访问 registry.redhat.io registry 和 charts.openshift.io Helm Chart 仓库,您可以通过将指定资源直接镜像到目标 registry 来在部分断开连接的环境中部署 Red Hat Developer Hub 实例。

先决条件

  • 已安装 Red Hat OpenShift Container Platform 4.14 或更高版本。
  • 您可以访问 charts.openshift.io Helm Chart 仓库。
  • 您可以访问 registry.redhat.io
  • 您可以访问可从断开连接的集群访问的镜像 registry,例如:OpenShift Container Platform 镜像 registry。有关公开 OpenShift Container Platform 镜像 registry 的更多信息,请参阅 公开 registry
  • 已登陆到目标镜像 registry,并有将镜像推送到它的权限。如需更多信息,请参阅配置允许镜像镜像的凭证
  • 已在工作站上安装了 OpenShift CLI (oc)。
  • 已安装了 oc-mirror OpenShift CLI (oc)插件。如需更多信息,请参阅安装 oc-mirror OpenShift CLI 插件
  • Red Hat Developer Portal 中有一个帐户。

流程

  1. 运行以下命令,使用 OpenShift CLI (oc)登录到 OpenShift Container Platform 帐户:

    oc login -u <user> -p <password> https://api.<hostname>:6443
    Copy to Clipboard Toggle word wrap
  2. 从断开连接的集群中,登录到您要镜像的镜像 registry,如 OpenShift Container Platform 镜像 registry。
  3. 创建 ImageSetConfiguration.yaml 文件。
  4. ImageSetConfiguration.yaml 文件中,指定您要镜像的资源。例如:

    apiVersion: mirror.openshift.io/v1alpha2
    kind: ImageSetConfiguration
    mirror:
      helm:
        repositories:
          - name: <repository_name> (1)
            url: <repository_url> (2)
            charts:
              - name: <chart_name> (3)
                version: "<rhdh_version>" (4)
    Copy to Clipboard Toggle word wrap
    包含您要镜像的 Helm chart 的仓库名称,如 openshift-charts
    包含您要镜像的 Helm Chart 的仓库的 URL,例如 https://charts.openshift.io
    包含您要镜像的镜像的 Helm Chart 名称,如 redhat-developer-hub
    要使用的 Red Hat Developer Hub 版本,如 1.6
  5. 通过运行 oc-mirror 命令,将镜像设置配置文件中指定的资源直接镜像到目标 registry。例如:

    oc-mirror --config=<mirror_config_directory>/ImageSetConfiguration.yaml <target-mirror-registry>
    Copy to Clipboard Toggle word wrap

    其中:

    <mirror_config_directory>
    指定系统上镜像设置配置文件的位置,如 .user
    <target_mirror_registry>
    指定目标镜像 registry 的位置和名称,如docker://registry.example:5000
    注意

    运行 oc-mirror 命令会创建一个包含 Helm Chart 和 ImageContentSourcePolicy (ICSP)清单的本地工作区。ICSP 清单包含一个自动生成的 imageContentSourcePolicy.yaml 文件,您必须在以后的步骤中对集群应用该文件。

    输出示例

    Writing image mapping to oc-mirror-workspace/results-1738070846/mapping.txt
    Writing ICSP manifests to oc-mirror-workspace/results-1738070846
    Copy to Clipboard Toggle word wrap

  6. 在工作区中,通过运行 ls 命令找到 imageContentSourcePolicy.yaml 文件。例如:

    ls <workspace_directory>/<results_directory>
    Copy to Clipboard Toggle word wrap

    其中:

    <workspace_directory>
    指定工作区目录的名称,如 oc-mirror-workspace
    <results_directory>
    指定结果目录的名称,例如 results-1738070846
  7. 要镜像 Helm Chart,请通过运行 oc apply 命令在断开连接的集群中部署 imageContentSourcePolicy.yaml 文件。例如:

    oc apply -f <workspace_directory>/<results_directory>/ImageContentSourcePolicy.yaml
    Copy to Clipboard Toggle word wrap

    其中:

    <workspace_directory>
    指定工作区目录的名称,如 oc-mirror-workspace
    <results_directory>
    指定结果目录的名称,例如 results-1738070846
  8. 在 air-gapped 环境中,通过运行带有 namespaceset 选项的 helm install 命令,将 Helm Chart 部署到您要使用的命名空间中。例如:

    CLUSTER_ROUTER_BASE=$(oc get route console -n openshift-console -o=jsonpath='{.spec.host}' | sed 's/[.]*\.//')
    
    helm install <rhdh_instance> <workspace_directory>/<results_directory>/charts/<archive_file> --namespace <your_namespace> --create-namespace \
      --set global.clusterRouterBase="$CLUSTER_ROUTER_BASE"
    Copy to Clipboard Toggle word wrap

    其中:

    <rhdh_instance>
    指定 Red Hat Developer Hub 实例的名称,如 my-rhdh
    <workspace_directory>
    指定工作区目录的名称,如 oc-mirror-workspace
    <results_directory>
    指定结果目录的名称,例如 results-1738070846
    <archive_file>
    指定包含您要镜像资源的归档文件的名称,如 redhat-developer-hub-1.4.1.tgz
    <your_namespace>
    指定要将 Helm Chart 部署到的命名空间,如 my-rhdh-project
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

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

让开源更具包容性

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

關於紅帽

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

Theme

© 2026 Red Hat
返回顶部