第1章 Operator を使用した AKS への Developer Hub のデプロイ
Red Hat Developer Hub Operator を使用して、AKS に Developer Hub をデプロイできます。
手順
次の例に示すように、Red Hat 認証情報を使用して
rhdh-pull-secretという名前のImagePull Secretを作成し、保護されたregistry.redhat.ioからイメージにアクセスします。kubectl -n <your_namespace> create secret docker-registry rhdh-pull-secret \ --docker-server=registry.redhat.io \ --docker-username=<redhat_user_name> \ --docker-password=<redhat_password> \ --docker-email=<email>rhdh-ingress.yamlという名前の Ingress マニフェストファイルを作成し、次のように Developer Hub サービス名を指定します。apiVersion: networking.k8s.io/v1 kind: Ingress metadata: name: rhdh-ingress namespace: my-rhdh-project spec: ingressClassName: webapprouting.kubernetes.azure.com rules: - http: paths: - path: / pathType: Prefix backend: service: name: backstage-<your-CR-name> port: name: http-backend作成した Ingress をデプロイするには、次のコマンドを実行します。
kubectl -n <your_namespace> apply -f rhdh-ingress.yaml次の例を使用して、Developer Hub 設定ファイル
app-config.yamlを含むmy-rhdh-app-configconfig map を作成します。apiVersion: v1 kind: ConfigMap metadata: name: my-rhdh-app-config data: "app-config.yaml": | app: title: Red Hat Developer Hub baseUrl: https://<app_address> backend: auth: externalAccess: - type: legacy options: subject: legacy-default-config secret: "${BACKEND_SECRET}" baseUrl: https://<app_address> cors: origin: https://<app_address>次の例に示すように、
<my_product_secrets>シークレットを作成し、Base64-encoded文字列値を持つBACKEND_SECRETという名前のキーを追加します。apiVersion: v1 kind: Secret metadata: name: <my_product_secrets>1 stringData: BACKEND_SECRET: "xxx"- 1
<my_product_secrets>は、任意の Developer Hub シークレット名です。<my_product_secrets>は、Developer Hub 内のシークレット設定の識別子を指定します。
次のように、
<your-rhdh-cr>という名前のBackstageカスタムリソース (CR) マニフェストファイルを作成し、以前に作成したrhdh-pull-secretを含めます。apiVersion: rhdh.redhat.com/v1alpha3 kind: Backstage metadata: name: <your-rhdh-cr> spec: application: imagePullSecrets: - rhdh-pull-secret appConfig: configMaps: - name: my-rhdh-app-config extraEnvs: secrets: - name: <my_product_secrets>1 - 1
<my_product_secrets>は、任意の Developer Hub シークレット名です。<my_product_secrets>は、Developer Hub 内のシークレット設定の識別子を指定します。
CR マニフェストを namespace に適用します。
kubectl -n my-rhdh-project apply -f rhdh.yaml-
URL:
https://<app_address>を使用して、デプロイした Developer Hub にアクセスします。ここで、<app_address> は、前に取得した Ingress アドレス (たとえば、https://108.141.70.228) です。 オプション: CR を削除するには、次のコマンドを実行します。
kubectl -n my-rhdh-project delete -f rhdh.yaml