すべてのプロダクト
Search
ドキュメントセンター

Container Registry:Build a container image in a VPC

最終更新日:Mar 26, 2026

ソースコードや依存関係 (Maven リポジトリなど) が Virtual Private Cloud (VPC) またはプライベートデータセンター内にある場合、パブリックインターネット経由でトラフィックをルーティングせずにコンテナイメージをビルドする方法が必要です。Container Registry Enterprise Edition は VPC ベースのイメージビルドをサポートしており、プライベート GitLab リポジトリや内部サービスにプライベートネットワーク接続を介して完全にアクセスできます。

前提条件

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

  • Container Registry Enterprise Edition インスタンスがあること。詳細については、「Container Registry Enterprise Edition インスタンスを使用したイメージのプッシュとプル」をご参照ください。

  • Container Registry Enterprise Edition インスタンスと同じリージョンの VPC またはデータセンターに自己管理型 GitLab サービスがあること。

    • GitLab に Elastic Compute Service (ECS) インスタンスの IP アドレスを介してアクセスする場合、100.104.0.0/16 からのトラフィックを許可するインバウンドルールを ECS セキュリティグループに追加してください。

    • GitLab が Server Load Balancer (SLB) 経由でアクセスされる場合、追加のセキュリティグループ構成は不要です。

  • GitLab サービスまたは VPC ベースのサービスが Express Connect 経由で接続されたデータセンターにある場合:

    • データセンターの CIDR ブロックは、100.104.0.0/16 と重複してはなりません。

    • 仮想ボーダールータ (VBR) およびデータセンターのルーターで、100.104.0.0/16 の戻りルートを設定します。詳細については、「Express Connectとは」および「VBR」をご参照ください。

  • VPC モードをサポートするゾーンに作成された VPC と vSwitch があること。次の表にサポートされているゾーンを示します。

サポートされているゾーン

クラウドタイプリージョンゾーン
Alibaba Cloud パブリッククラウド中国 (北京)cn-beijing-c, cn-beijing-d, cn-beijing-e, cn-beijing-f, cn-beijing-g, cn-beijing-h, cn-beijing-i, cn-beijing-j, cn-beijing-k
中国 (杭州)cn-hangzhou-e, cn-hangzhou-f, cn-hangzhou-g, cn-hangzhou-h, cn-hangzhou-i, cn-hangzhou-j, cn-hangzhou-k
中国 (深セン)cn-shenzhen-a, cn-shenzhen-b, cn-shenzhen-c, cn-shenzhen-d, cn-shenzhen-e, cn-shenzhen-f
中国 (上海)cn-shanghai-a, cn-shanghai-b, cn-shanghai-c, cn-shanghai-d, cn-shanghai-e, cn-shanghai-f, cn-shanghai-g, cn-shanghai-i
中国 (張家口)cn-zhangjiakou-a, cn-zhangjiakou-b, cn-zhangjiakou-c
中国 (香港)cn-hongkong-b, cn-hongkong-c, cn-hongkong-d
シンガポールap-southeast-1a, ap-southeast-1b, ap-southeast-1c
インドネシア (ジャカルタ)ap-southeast-5a, ap-southeast-5b
米国 (バージニア)us-east-1a, us-east-1b
米国 (シリコンバレー)us-west-1a, us-west-1b
イギリス (ロンドン)eu-west-1a, eu-west-1b
ドイツ (フランクフルト)eu-central-1a, eu-central-1b
日本 (東京)ap-northeast-1a, ap-northeast-1b
中国 (成都)cn-chengdu-a, cn-chengdu-b
中国 (河源)cn-heyuan-a, cn-heyuan-b
Finance Cloud中国 (杭州)cn-hangzhou-finance-h, cn-hangzhou-finance-i, cn-hangzhou-finance-j, cn-hangzhou-finance-k

仕組み

VPC ベースのソースコードリポジトリをバインドすると、Container Registry は ECS API オペレーションを呼び出してマネージドセキュリティグループを作成します。このセキュリティグループは、Container Registry サービスが自己管理型 GitLab インスタンスに到達するためのネットワークパスを提供します。その後、Container Registry はご利用の vSwitch 上の Elastic Network Interface (ENI) を Container Registry Enterprise Edition インスタンスにバインドし、接続を完了します。

マネージドセキュリティグループは Container Registry によって完全に制御されます。表示することはできますが、変更することはできません。すべてのインバウンドトラフィックを拒否し、ご利用の GitLab サービスと Maven リポジトリのプライベートエンドポイントへのアウトバウンドトラフィックのみを許可します。

ステップ 1: VPC リンクの作成

  1. Container Registry コンソールにログインします。

  2. 上部のナビゲーションバーで、リージョンを選択します。

  3. 左側のナビゲーションウィンドウで、[インスタンス] をクリックします。

  4. [インスタンス]」ページで、対象の Container Registry Enterprise Edition インスタンスのカードをクリックします。

  5. [概要] ページで、[リポジトリ] > [コードソース] を選択します。

  6. コード ソース」ページで GitLab を見つけ、「操作」列の「リンクの管理」をクリックします。

  7. [リンクの管理] ダイアログボックスで、以下のパラメーターを設定し、[作成] をクリックします。

    パラメーター説明
    GitLab サーバーのプライベート IP アドレス自己管理型 GitLab ソースコードリポジトリのプライベート IP アドレス192.168.1.10
    許可する必要があるその他の IP アドレスアウトバウンドアクセスを許可する追加の VPC プライベートエンドポイント (Maven リポジトリなど)192.168.1.20
    既存の VPC前提条件で作成された VPCvpc-bp1xxxxxxxxxx
    vSwitch前提条件で作成された vSwitchvsw-bp1xxxxxxxxxx

ステップ 2: GitLab ソースコードリポジトリのバインド

  1. [コード ソース] ページで GitLab を見つけ、[アカウントのバインド] を [操作] 列でクリックします。

  2. [Private GitLab] ダイアログボックスで、次のパラメーターを設定し、[確認] をクリックします。

    パラメーター説明
    ネットワークタイプ[VPC]
    リンク情報ステップ 1 で作成された VPC リンク
    エンドポイントGitLab サービスのログイン URL。自己管理型 GitLab インスタンスには非公開 URL を使用し、公開 GitLab サービスには公開 URL を使用します。http://192.168.1.10
    ユーザー名ご利用の GitLab ユーザー名alice
    プライベートトークンご利用の GitLab アクセストークン。作成方法については、「ソースコードホスティングプラットフォームのバインド」をご参照ください。

GitLab の [ステータス] 列に [バインド済み] が表示されると、リポジトリは Container Registry Enterprise Edition インスタンスに正常に接続されています。

ステップ 3: VPC でのイメージのビルド

警告

ビルドタスクを送信する前に、[中国本土以外にデプロイされたサーバーでビルド] をクリアします。このオプションを選択したままにすると、ビルドに中国本土以外のサーバーが使用され、ご利用の VPC リソースに到達できません。

GitLab リポジトリがバインドされたら、イメージビルドをトリガーします。フルビルドワークフローの詳細については、「Container Registry Enterprise Edition インスタンスを使用したイメージのビルド」をご参照ください。

次のステップ