1.2. Red Hat Developer Hub Operator を使用したカスタム設定での Developer Hub の実行


Developer Hub Operator を使用してカスタム設定で Red Hat Developer Hub を実行するには、次の Backstage カスタムリソース (CR) を作成します。

  • カスタム config map にプロビジョニングされたファイルをマウントする。
  • カスタムシークレットでプロビジョニングされた環境変数を挿入する。

手順

  1. my-rhdh-custom-resource.yaml ファイルで Backstage CR を作成し、カスタム config map とシークレットを使用します。

    例1.2 最小の my-rhdh-custom-resource.yaml カスタムリソースの例

    apiVersion: rhdh.redhat.com/v1alpha3
    kind: Backstage
    metadata:
      name: my-rhdh-custom-resource
    spec:
      application:
        appConfig:
          mountPath: /opt/app-root/src
          configMaps:
             - name: my-rhdh-app-config
        extraEnvs:
          secrets:
             - name: <my_product_secrets>
        extraFiles:
          mountPath: /opt/app-root/src
        replicas: 1
        route:
          enabled: true
      database:
        enableLocalDb: true
    Copy to Clipboard Toggle word wrap

    例1.3 動的プラグインおよび RBAC ポリシー config map、および外部の PostgreSQL データベースシークレットを含む my-rhdh-custom-resource.yaml カスタムリソースの例。

    apiVersion: rhdh.redhat.com/v1alpha3
    kind: Backstage
    metadata:
      name: <my-rhdh-custom-resource>
    spec:
      application:
        appConfig:
          mountPath: /opt/app-root/src
          configMaps:
             - name: my-rhdh-app-config
             - name: rbac-policies
        dynamicPluginsConfigMapName: dynamic-plugins-rhdh
        extraEnvs:
          secrets:
             - name: <my_product_secrets>
             - name: my-rhdh-database-secrets
        extraFiles:
          mountPath: /opt/app-root/src
          secrets:
            - name: my-rhdh-database-certificates-secrets
              key: postgres-crt.pem, postgres-ca.pem, postgres-key.key
        replicas: 1
        route:
          enabled: true
      database:
        enableLocalDb: false
    Copy to Clipboard Toggle word wrap
    必須フィールド:
    必須フィールドはありません。空の Backstage CR を作成し、デフォルト設定で Developer Hub を実行できます。
    オプションのフィールド:
    spec.application.appConfig.configMaps
    config map 名のリストを入力します。

    my-rhdh-app-config config map のファイルをマウントします。

    spec:
      application:
        appConfig:
          mountPath: /opt/app-root/src
          configMaps:
             - name: my-rhdh-app-config
    Copy to Clipboard Toggle word wrap

    例1.4 my-rhdh-app-config および rbac-policies config map にファイルをマウントします。

    spec:
      application:
        appConfig:
          mountPath: /opt/app-root/src
          configMaps:
             - name: my-rhdh-app-config
             - name: rbac-policies
    Copy to Clipboard Toggle word wrap
    spec.application.extraEnvs.envs

    必要に応じて、プロキシー環境変数 など、シークレットではない追加の環境変数を入力します。

    例1.5 HTTP_PROXYHTTPS_PROXY、および NO_PROXY 環境変数を注入します。

    spec:
      application:
        extraEnvs:
          envs:
            - name: HTTP_PROXY
              value: 'http://10.10.10.105:3128'
            - name: HTTPS_PROXY
              value: 'http://10.10.10.106:3128'
            - name: NO_PROXY
              value: 'localhost,example.org'
    Copy to Clipboard Toggle word wrap
    spec.application.extraEnvs.secrets

    環境変数のシークレット名リストを入力します。

    例1.6 Red Hat Developer Hub シークレットに環境変数を挿入する

    spec:
      application:
        extraEnvs:
          secrets:
             - name: <my_product_secrets>
    Copy to Clipboard Toggle word wrap

    例1.7 Red Hat Developer Hub および my-rhdh-database-secrets シークレットに環境変数を挿入します。

    spec:
      application:
        extraEnvs:
          secrets:
             - name: <my_product_secrets>
             - name: my-rhdh-database-secrets
    Copy to Clipboard Toggle word wrap
注記

<my_product_secrets&gt; は、Developer Hub 内のシークレット設定の識別子を指定するのに推奨される Developer Hub シークレット名です。

spec.application.extraFiles.secrets

証明書ファイルのシークレット名とファイルのリストを入力します。

my-rhdh-database-certificates-secrets シークレットに含まれる postgres-crt.pempostgres-ca.pem、および postgres-key.key ファイルをマウントします。

spec:
  application:
    extraFiles:
      mountPath: /opt/app-root/src
      secrets:
        - name: my-rhdh-database-certificates-secrets
          key: postgres-crt.pem, postgres-ca.pem, postgres-key.key
Copy to Clipboard Toggle word wrap

spec.database.enableLocalDb

ローカルの PostgreSQL データベースを有効または無効にします。

ローカルの PostgreSQL データベース生成を無効にして、外部の postgreSQL データベースを使用します。

spec:
  database:
    enableLocalDb: false
Copy to Clipboard Toggle word wrap

開発環境で、ローカルの PostgreSQL データベースを使用します。

spec:
  database:
    enableLocalDb: true
Copy to Clipboard Toggle word wrap

spec.deployment

任意で デプロイメント設定を入力します

  1. Developer Hub インスタンスを起動または更新するには、Backstage CR を適用します。

    $ oc apply --filename=my-rhdh-custom-resource.yaml --namespace=my-rhdh-project
    Copy to Clipboard Toggle word wrap

1.2.1. Red Hat Developer Hub Operator を使用したカスタム設定での追加ファイルのマウント

Developer Hub Operator を使用して、ConfigMap や Secret などの追加ファイルをコンテナー内の任意の場所にマウントできます。

mountPath フィールドで、ConfigMap または Secret をマウントする場所を指定します。マウントの動作は、subPath を含めるか除外するかに関係なく、key または mountPath フィールドの指定によって変わります。

  • keymountPath が指定されていない場合: 各キーまたは値が、subPath を使用して filename またはコンテンツとしてマウントされます。
  • keymountPath の有無にかかわらず指定されている場合: 指定されたキーまたは値が、subPath を使用してマウントされます。
  • mountPath のみが指定されている場合: すべてのキーまたは値を含むディレクトリーが、subPath を使用せずにマウントされます。
注記
  • OpenShift Container Platform は、subPath を使用してマウントされたボリュームを自動的に更新しません。デフォルトでは、RHDH Operator がこれらの ConfigMap または Secret を監視し、変更が発生したときに RHDH Pod を更新します。
  • セキュリティー上の理由から、Red Hat Developer Hub は Operator サービスアカウントにシークレットの読み取りアクセス権を付与しません。そのため、mountPath と key の両方を指定せずに Secret からファイルをマウントすることはできません。

前提条件

手順

  1. OpenShift Container Platform で、次の YAML コードを使用して ConfigMap または Secret を作成します。

    例1.8 最小限の my-project-configmap ConfigMap の例

    apiVersion: v1
    kind: ConfigMap
    metadata:
      name: my-project-configmap
    data:
      file11.txt: |
        My file11 content
      file 12.txt: |
        My file12 content
    Copy to Clipboard Toggle word wrap

    例1.9 最小限の Red Hat Developer Hub シークレットの例

    apiVersion: v1
    kind: Secret
    metadata:
      name: <my_product_secrets>
    StringData:
      secret11.txt: |
        secret-content
    Copy to Clipboard Toggle word wrap

    詳細は、カスタム Red Hat Developer Hub 設定のプロビジョニングおよび使用 を参照してください。

  2. configMaps name の値を ConfigMap の名前に設定するか、secrets name の値を Backstage CR の Secret の名前に設定します。以下に例を示します。

    spec:
      application:
        extraFiles:
          mountPath: /my/path
          configMaps:
            - name: my-project-configmap
              key: file12.txt
              mountPath: /my/my-rhdh-config-map/path
          secrets:
            - name: <my_product_secrets>
              key: secret11.txt
              mountPath: /my/my-rhdh-secret/path
    Copy to Clipboard Toggle word wrap
注記

<my_product_secrets&gt; は、Developer Hub 内のシークレット設定の識別子を指定するのに推奨される Developer Hub シークレット名です。

トップに戻る
Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。 最新の更新を見る.

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

Theme

© 2025 Red Hat