Cloud Build の概要

Cloud Build は、Google Cloud Platform のインフラストラクチャでビルドを行うサービスです。

Cloud Build は、さまざまなリポジトリやクラウド ストレージ スペースからソースコードをインポートし、仕様に合わせてビルドを実行し、Docker コンテナや Java アーカイブなどのアーティファクトを生成できます。

ビルド構成とビルドステップ

ビルド構成を作成して、実行するタスクを Cloud Build に指示できます。依存関係をフェッチして、単体テスト、静的分析、結合テストを実行し、docker、gradle、maven、bazel、gulp などのビルドツールでアーティファクトを作成するようにビルドを構成できます。

Cloud Build は、一連のビルドステップとしてビルドを実行します。各ビルドステップは、Docker コンテナで実行されます。ビルドステップの実行は、スクリプトでコマンドを実行する場合と似ています。

Cloud Build や Cloud Build コミュニティで提供されているビルドステップを使用することも、独自のカスタム ビルドステップを作成することもできます。

各ビルドステップは、ローカルの Docker ネットワーク cloudbuild に接続しているコンテナで実行されます。これにより、ビルドステップが相互に通信を行い、データを共有できます。

Cloud Build では、UbuntuGradle などの標準の Docker Hub イメージを使用できます。

ビルドの開始

gcloud コマンドライン ツールや Cloud Build API を使用して Cloud Build で手動でビルドを開始できます。また、Cloud Build のビルドトリガー機能を使用して、コードの変更に応じて新しいビルドを開始する継続的インテグレーション / 継続的デリバリー(CI / CD)ワークフローを自動化することもできます。

Cloud Source Repositories、GitHub、Bitbucket など、多数のコード リポジトリとビルドトリガーを統合できます。

ビルド結果の表示

ビルドの結果を表示するには、gcloud ツールまたは Cloud Build API を使用するか、Cloud Console の Cloud Build セクションで [ビルド履歴] ページを使用します。このページには、Cloud Build が実行したすべてのビルドについての詳細とログが表示されます。手順については、ビルド結果の表示をご覧ください。

ビルドの仕組み

次の手順では、一般的な Cloud Build ビルドのライフサイクルについて説明します。

  1. アプリケーション コードと必要なアセットを準備します。
  2. Cloud Build の命令が含まれる YAML または JSON 形式のビルド構成ファイルを作成します。
  3. Cloud Build にビルドを送信します。
  4. Cloud Build は提供されたビルド構成に基づいてビルドを実行します。
  5. 該当する場合、ビルドされたイメージは Container Registry に push されます。 Container Registry は、Google Cloud 上に限定公開の安全な Docker イメージ ストレージを提供します。

Docker

Cloud Build は、Docker を使用してビルドを実行します。ビルドステップごとに、Cloud Build は docker run のインスタンスとして Docker コンテナを実行します。現在、Cloud Build は Docker エンジン バージョン 19.03.8 を実行しています。

Cloud Build のインターフェース

Cloud Build は、Google Cloud Console、gcloud コマンドライン ツール、Cloud Build の REST API で使用できます。

Cloud Console では、[ビルド履歴] ページで Cloud Build のビルド結果を確認できます。また、[ビルドトリガー] でビルドを自動化できます。

この gcloud ツールでビルドの作成と管理ができます。ビルドの送信ビルドの一覧表示ビルドのキャンセルなどのタスクを実施するコマンドを実行できます。

Cloud Build REST API を使用するとビルドをリクエストできます。

他の Cloud Platform API と同様、OAuth2 を使用してアクセスを承認する必要があります。アクセスの承認後、API を使用して新規ビルドの開始、ビルドのステータスや詳細の表示、プロジェクト別のビルドのリスト表示、現在処理中のビルドのキャンセルなどが行えるようになります。

詳細については、API ドキュメントをご覧ください。

ローカルでのビルドの実行

ビルドを Cloud Build に送信する前にテストする場合に、cloud-build-local ツールを用いてローカルでビルドを実行できます。このツールの使用方法については、ローカルでのビルドとデバッグページをご覧ください。

次のステップ