Harbor プロジェクトを作成する

このドキュメントでは、GDC コンソールまたは gdcloud CLI を使用して Harbor プロジェクトを作成して検証する方法について、デベロッパーと管理者に説明します。

コンテナ イメージを Google Distributed Cloud(GDC)エアギャップ アプライアンスに保存、保護、配布するには、事前に構成された tear-harbor インスタンス内の Harbor プロジェクトに整理します。Harbor では、プロジェクトは関連するアーティファクトをグループ化し、イメージを管理し、特定のポリシー、アクセス制御、レプリケーション ルールを適用するための論理ユニットとして機能します。

tear システム プロジェクトは、使用可能な唯一の Harbor インスタンスとして tear-harbor を提供します。これは、アプライアンス全体用の単一の事前構成済みレジストリです。そのため、顧客プロジェクトごとに個別の Harbor インスタンスをプロビジョニング、アップグレード、保守する必要はありません。この一元化されたアーキテクチャにより、インフラストラクチャのオーバーヘッドが解消され、1 つの共有レジストリからイメージ Namespace、アクセス制御、脆弱性スキャンを管理できます。この共有レジストリを任意の顧客プロジェクトのワークロードで使用するには、tear プロジェクトで Harbor ロールを作成し、tear プロジェクトで Harbor プロジェクトを直接作成する必要があります。

始める前に

開始する前に、次の要件を満たしていることを確認してください。

  • 推奨される知識: Managed Harbor Service の概要で説明されているコンセプトとアーキテクチャを理解していることを確認します。Harbor は tear プロジェクトでホストされる共有リソースであるため、すべての Harbor ロールの割り当てとプロジェクト作成タスクは tear プロジェクトを対象とする必要があります。
  • Harbor ID を初期化する: コンソールでプロジェクトを作成する前に、Harbor UI に少なくとも 1 回ログインする必要があります。初回ログイン時に、Harbor レジストリで ID が初期化されます。詳細については、Harbor インスタンスの URL を取得すると Harbor ID を初期化するをご覧ください。

必要な IAM ロール

顧客プロジェクトで使用する Harbor プロジェクトを含む Harbor プロジェクトを作成するには、tear-harbor インスタンスにアクセスするために、tear プロジェクトで Harbor プロジェクト作成者(harbor-project-creator)の Identity and Access Management(IAM)ロールを作成して付与する必要があります。このロールは、tear プロジェクトの tear-harbor インスタンス内の Harbor プロジェクト カスタム リソースに対する作成、取得、監視の権限を提供します。これにより、新しいイメージ Namespace を定義し、コンテナ化されたアプリケーションのセキュリティ境界を確立できます。

tear プロジェクトへのアクセス権をリクエストするには、プロジェクト IAM 管理者にお問い合わせください。

Harbor インスタンスの URL を取得する

Harbor UI にログインするか、gdcloud CLI を使用してイメージを管理するには、レジストリ インスタンスの外部エンドポイント URL が必要です。

  1. gdcloud CLI を使用して、Harbor インスタンスの URL を取得します。

    gdcloud harbor instances describe tear-harbor --project=tear
    

    出力は次のようになります。通常、externalEndpoint フィールドが含まれます。

    externalEndpoint: https://harbor.tear.example.com
    
  2. externalEndpoint URL をコピーして、ブラウザから Harbor UI にアクセスし、クライアント信頼認証を確立します。

gdcloud CLI にアクセスできない場合は、インフラストラクチャ オペレータ(IO)にお問い合わせください。

Harbor ID を初期化する

ID を同期するには、Harbor UI に少なくとも 1 回ログインします。この初回ログインにより、ユーザー プロファイルが Harbor データベースに登録され、システムが権限を認識します。

  1. ブラウザでレジストリ URL に移動します。
  2. GDC の認証情報を使用してログインします。

Harbor プロジェクトを作成する

tear プロジェクトの tear-harbor は、使用可能な唯一の Harbor インスタンスであり、アプライアンス全体の共有レジストリとして機能するため、他の顧客プロジェクトのワークロードのイメージを保存する Harbor プロジェクトを含め、すべての Harbor プロジェクトを tear プロジェクトに作成する必要があります。GDC コンソールまたは gdcloud CLI を使用して Harbor プロジェクトを作成します。

コンソール

GDC コンソールで、tear プロジェクトで次の操作を行います。

  1. tear プロジェクトを選択します。
  2. ナビゲーション メニューの [CI/CD] セクションで、[Harbor Container Registry] リンクをクリックします。
  3. [Harbor プロジェクトを作成] をクリックします。
  4. Harbor プロジェクトの名前を入力します。
  5. 省略可: 脆弱性スキャンはデフォルトで有効になっています。Harbor プロジェクトの脆弱性スキャンの自動実行を無効にするには、[プロジェクトの脆弱性スキャンを有効にする] 切り替えボタンをクリックします。詳細については、脆弱性をスキャンするをご覧ください。
  6. [作成] をクリックします。プロジェクトが作成されたことを示す確認メッセージが表示されます。
  7. Harbor UI にログインして、Harbor プロジェクトを表示できることを確認します。

gdcloud

tear プロジェクトに Harbor プロジェクトを作成します。

gdcloud harbor harbor-projects create HARBOR_PROJECT \
  --project=tear \
  --instance=tear-harbor

HARBOR_PROJECT は、作成する Harbor プロジェクトの名前に置き換えます。