第3章 デプロイメント前の Quay の設定
Operator は OpenShift へのデプロイ時にすべての Red Hat Quay コンポーネントを管理できます。これはデフォルト設定です。または、1 つ以上のコンポーネントを外部から管理でき、セットアップに対する制御を強化し、Operator が残りのコンポーネントを管理できるようにできます。
管理外のコンポーネントを設定するための標準的なパターンは以下のとおりです。
-
適切な設定で
config.yaml
設定ファイルを作成します。 設定ファイルを使用してシークレットを作成します。
$ oc create secret generic --from-file config.yaml=./config.yaml config-bundle-secret
QuayRegistry YAML ファイル
quayregistry.yaml
を作成し、管理対象外コンポーネントを特定し、作成された Secret も参照します。以下に例を示します。quayregistry.yaml
apiVersion: quay.redhat.com/v1 kind: QuayRegistry metadata: name: example-registry namespace: quay-enterprise spec: configBundleSecret: config-bundle-secret components: - kind: objectstorage managed: false
YAML ファイルを使用してレジストリーをデプロイします。
oc create -f quayregistry.yaml
3.1. 自動化のための Quay の事前設定
Quay には、自動化をサポートする数多くの設定オプションがあります。これらのオプションはデプロイメントの前に設定でき、ユーザーインターフェイスとの対話の必要性を最小限に抑えることができます。
3.1.1. API による最初のユーザー作成の許可
設定オプション FEATURE_USER_INITIALIZE
を true
に設定し、API /api/v1/user/initialize
を使用して最初のユーザーを作成できるようにします。この API エンドポイントは、既存の組織の OAuth アプリケーションによって生成される OAuth トークンを必要とする他のすべてのレジストリー API 呼び出しとは異なり、認証は必要ありません。
Quay をデプロイしたら、API を使用してユーザーを作成できます (例: quayadmin
)。他のユーザーが作成されていない場合です。詳細は、API を使用した最初のユーザーの作成 のセクションを参照してください。
3.1.2. API 一般アクセスの有効化
Quay レジストリー API への一般アクセス を許可するように、BROWSER_API_CALLS_XHR_ONLY
を false
に設定します。
3.1.3. スーパーユーザーの追加
デプロイメント後はユーザーを作成することはできませんが、最初のユーザーが完全なパーミッションを持つ管理者となるようにしておくと便利です。SUPER_USER
設定オブジェクトを使用すると、事前にこの設定を事前に設定できます。
3.1.4. ユーザー作成の制限
スーパーユーザーを設定したら、新規ユーザーを作成する機能をスーパーユーザーグループに制限できます。ユーザー作成を制限するには、FEATURE_USER_CREATION
を false
に設定します。
3.1.5. 自動化の推奨設定
適切な設定が含まれる config.yaml
設定ファイルを作成します。
config.yaml
... FEATURE_USER_INITIALIZE: true BROWSER_API_CALLS_XHR_ONLY: false SUPER_USERS: - quayadmin FEATURE_USER_CREATION: false ...
3.1.6. 初期設定を使用した Operator のデプロイ
設定ファイルを使用してシークレットを作成します。
$ oc create secret generic --from-file config.yaml=./config.yaml init-config-bundle-secret
QuayRegistry YAML ファイル
quayregistry.yaml
を作成し、管理対象外コンポーネントを特定し、作成された Secret も参照します。以下に例を示します。quayregistry.yaml
apiVersion: quay.redhat.com/v1 kind: QuayRegistry metadata: name: example-registry namespace: quay-enterprise spec: configBundleSecret: init-config-bundle-secret
レジストリーをデプロイします。
$ oc create -f quayregistry.yaml
-
API を使用して最初のユーザー
quayadmin
を作成します。