Google Cloud での CI / CD

CI / CD デベロッパー ハブへようこそ。ここでは、継続的インテグレーションと継続的デプロイについての概要と詳細を説明します。

調査結果を探している、CI / CD プロダクトについて調べている、クイックスタートや動画を参照したいなど、どのような用途にご利用いただく場合も、このハブの目的は 1 つです。すなわち、お客様のチームが Google Cloud 上の CI / CD を使ってより迅速かつ安全にソフトウェアをデリバリーできるよう支援することです。

おすすめのクイックスタート

まずはクイックスタートから開始しましょう。初めての CI / CD パイプラインをすぐに実行できます。

Cloud Build による Docker イメージのビルド

Cloud Build を使用して Docker イメージをビルドし、そのイメージを Container Registry に push します。

Cloud Build による Go アプリケーションのビルド

Cloud Build を使用して Go バイナリをビルドし、そのバイナリを Google Cloud Storage に push します。

Cloud Build による App Engine の継続的デプロイ

Cloud Build と Cloud Source Repositories を使用して App Engine のデプロイを自動化します。

注目の Codelab

Cloud Build による継続的デプロイ

Cloud Build を使用して GKE の継続的デプロイ パイプラインを設定します。

Spinnaker を使用した Kubernetes への継続的デリバリー

Spinnaker を使用して Kubernetes でアプリケーションのデプロイ、カナリア リリース、自動ロールバックを行う方法など、ベスト プラクティスについて学習します。

Binary Authorization による GKE のデプロイの保護

Binary Authorization を使用すると、コンテナ イメージがチームのプラクティスや基準に従っているか確認したうえでデプロイできます。

GCP CI / CD Suite インタラクティブ グランドツアー

Kubernetes ベースの継続的インテグレーション / 継続的デリバリー(CI / CD)パイプライン全体を GCP にデプロイしましょう。このインタラクティブ チュートリアルでは、Google Kubernetes Engine、Cloud Source Repositories、Cloud Build、Spinnaker を構成し、コードのビルド、テスト、カナリア リリース、デプロイを自動的に行う方法について説明します。

注目のプロダクト

現在お使いのパイプラインを Google Cloud に移行する場合も、Google のエンドツーエンド CI ソリューションである Cloud Build を使い始める場合も、Google が最適なソリューションを提供します。

Cloud Build

Cloud Build は、Google Cloud Platform インフラストラクチャでビルドを行うサービスです。Cloud Storage、Cloud Source Repositories、GitHub、Bitbucket からソースコードをインポートし、仕様に合わせてビルドを実行して、Docker コンテナや Java アーカイブなどのアーティファクトを生成します。

Container Registry

Container Registry では、Docker イメージの一元的な管理と、脆弱性分析を行えます。また、きめ細かなアクセス制御によって、どのユーザーが何にアクセスできるのかを決定できます。CI/CD 統合があらかじめ用意されており、完全に自動化された Docker パイプラインを設定して迅速なフィードバックを得ることができます。

Cloud Source Repositories

Google Cloud Source Repositories は、Google Cloud Platform でホストされる多機能のプライベート Git リポジトリです。この多機能でスケーラブルなプライベート Git リポジトリでは、コードを簡単に共同編集して安全に管理できます。他の GCP ツール(Cloud Build、Stackdriver、Cloud Pub/Sub など)に接続すれば、Git ワークフローを拡張できます。お客様が所有するすべてのリポジトリでインデックスによる高度な検索が可能なため、コードに迅速にアクセスできます。

Cloud Build Artifacts

注: このプロダクトは現在アルファ版です。Cloud Build Artifacts リンクをクリックしてアルファ版に登録し、ドキュメントにアクセスしてください。

Cloud Build Artifacts は、Maven と npm パッケージのリポジトリを作成し、管理できる GCP サービスです。

注目のソリューション

これらのソリューションを使用して、エンドツーエンドの継続的インテグレーションと継続的デプロイのパイプラインを設計して実装する方法を学びます。

Google Cloud Platform での Spinnaker

GCP に Spinnaker をインストールして管理することで、継続的デリバリーを簡単に実現できます。

Spinnaker と Kubernetes Engine を使用した継続的デリバリー パイプライン

Google Kubernetes Engine、Cloud Source Repositories、Cloud Build、Spinnaker を使用して継続的デリバリー パイプラインを作成し、ビルド、テスト、デプロイのプロセスを自動的にトリガーします。

Jenkins と Kubernetes Engine

マルチオペレーティング システムのサポート、クリーンなビルド、適切な負荷分散を実現するために Kubernetes Engine で Jenkins を実行します。

Cloud Build を使用した GitOps スタイルの継続的デリバリー

Google がホストするプロダクト スイートである Cloud Build と、広く利用されている GitOps 方式を使用して、Google Cloud Platform に継続的インテグレーションと継続的デリバリー(CI / CD)パイプラインを作成します。

コンテンツ ストリーミング

CI / CD 分野のイベントやその他のコンテンツに関する最新情報をお届けします。

Cloud Build の構成の構文を習得する

高度な CI / CD パイプラインを作成して Cloud Build の優れた機能を有効に活用しましょう。パイプラインが複雑化する中で、構成をメンテナンスしやすくする優れた機能とおすすめの方法を学んでください。

DevOps 技術 - 継続的インテグレーション

継続的インテグレーション(CI)とは何でしょうか。DevOps とはどのような関係なのでしょうか。このような CI に関する疑問やよく指摘される欠点、成功の測定方法について説明します。

GCP ポッドキャスト - 継続的インテグレーションと継続的デプロイ

続的インテグレーションと継続的デプロイに関する Google Cloud Platform のポッドキャストでは、CI / CD について詳しくご説明しています。Percy のビジュアル レビュー、Spinnaker の企業向け継続的デリバリー、Travis CI の継続的インテグレーションなど、さまざまな内容が学べます。

ブログ - (危機的状況でも)テストはスキップしないでください

「バグがどこかはわかっている。だからちょっとした修正をするつもりだ。でもテストの時間はない...。...まったく困ったものだ。」

Cloud Build と Kaniko の併用によるコンテナビルドの迅速化

Cloud Build を Kaniko(Dockerfile からコンテナ イメージをビルドするためのオープンソース ツール)と併用することで、コンテナビルドのアーティファクトをキャッシュに保存し、ビルド時間を大幅に短縮できます。

Cloud Build を使ったチーム作業の迅速化

現在のソフトウェア チームには、従来に増して迅速にビジネス価値を創出することが求められています。この目的のため、Google では Cloud Build を市場に投入しました。Cloud Build は、クラウド内でアプリケーションのビルドとテストを大規模に実施するためのフルマネージド CI / CD プラットフォームです。

CI / CD で本番環境からバグを排除する方法

Cloud Functions を実際に使用した例を使って、CI / CD のテスト戦略によって本番環境からバグを排除する方法を学びます。

GCP ポッドキャスト - Steven Kim と Christopher Sanson が語る Spinnaker

Spinnaker は、Netflix、Waze、Target、Cloudera などの企業によって採用されているオープンソースのマルチクラウド継続的デプロイ プラットフォームです。さらに、Halyard という新しいオープンソースのコマンドライン インターフェース(CLI)ツールを使用することで、Spinnaker 自体を簡単にデプロイできます。

動画ストリーム

動画ストリーム

Google Cloud デベロッパー ツールを使用した開発、デプロイ、デバッグ(Cloud Next '19)

Google Cloud は、App Engine などのサービスでアプリケーションの開発、デプロイ、デバッグを行うためのエンドツーエンドのワークフローを提供します。また、Cloud Source Repositories と他の Google Cloud ツールを使用して継続的インテグレーション プロセスを実装し、自動化されたビルドとテストによりチェックインを検証できます。

シフトレフト: Cloud Build による継続的インテグレーションのテスト(Cloud Next '19)

「シフトレフト」の DevOps 原則では、開発サイクルの初期段階でテストを行うことを推奨しています。この方法により、ソフトウェアの品質とシステムの状態を大幅に改善できます。Cloud Build を使用すると、完全な本番環境システムを複製できる自己完結型の Kubernetes 環境をプロビジョニング、テスト、破棄できます。これにより、すべてのビルドの一部としてシステム全体のテストを安全でコスト効率に優れた方法で実行できます。

Google Cloud の DevOps ベスト プラクティスを利用してハイブリッド ワークロードに対する管理を維持(Cloud Next '19)

すぐに使える devops のベスト プラクティスと自動化について説明します。集中管理の git リポジトリからコードとしてインフラストラクチャと構成を管理します。これにより、ハイブリッド ワークロードの可視性、制御、コンプライアンスを維持できます。複数のツール、構成、ポリシー システム、言語に対応し、デベロッパーのアジリティを損なうことなく、セキュリティとコンプライアンスの要件を満たすことができます。

Google コンテナツールと Cloud Build を使用して Kubernetes での開発を高速化(Cloud Next '19)

Skaffold や Google Cloud Build などの開発ツールを使用すると、開発の速さ 10 倍にできます。コードが変更されるたびに Skaffold がアプリケーションをインテリジェントに再構築し、デプロイします。これらはすべてお気に入りの IDE から実行できます。

Google Kubernetes Engine でのソフトウェア サプライ チェーンの保護(Cloud Next '19)

Cloud Build バイナリ認証のベスト プラクティスに従って、コードを Google Kubernetes Engine クラスタにデプロイする前に、ソフトウェア サプライ チェーンが既知の安全なパスをたどるようにする方法を説明します。

Cloud Build Infra-As-Code パイプラインによる再現可能な大規模な GCP 環境(Cloud Next '19)

Cloud Build を使用してパイプラインを作成し、Infra-As-Code 環境定義を検証して既存の環境を安全に更新します。また、環境定義のバージョニングと公開を行う方法や、Cloud Build、Jenkins、Spinnaker などのツールで実行されるアプリケーション デプロイメント パイプラインで定義を使用する方法について説明します。

Kubernetes ソフトウェア サプライ チェーンに必要なエンドツーエンドのセキュリティとコンプライアンス(Cloud Next '19)

マネージド ベースイメージ、GCR 脆弱性スキャン、バイナリ認証などを最大限に活用して、DevOps の全体的なセキュリティを向上させる方法について説明します。

マルチ環境、サーバーレスでの CI / CD(Cloud Next '19)

継続的デプロイ システムを構築することで、git リポジトリからマルチステージのクオリティ ラダー(実験、検証、テスト、リリース)、本番環境までの流れを自動化できます。CI / CD ツールを使用して、Cloud Functions、サーバーレス コンテナなどの GCP サーバーレス サービス全体でアプリのテストとデプロイを行う方法について説明します。

GKE と Tekton を使用した次世代の CI / CD(Cloud Next '19)

Kubernetes 環境で CI / CD システムを決めるのは容易なことではありません。選択肢が非常に多く、Kubernetes よりも前に構築されているシステムもあります。Google では、業界のリーダーと協力して、クラウド ネイティブの CI / CD システムのコンポーネント、API、ベスト プラクティスの標準セットを構築しました。今回は、サンプルを使ってデモを行い、マルチクラウド環境やハイブリッド クラウド環境で機能する最新の開発ワークフローを使用して、ソースから本番環境までのコードの管理に使用できる新しい Kubernetes ネイティブ リソースについて紹介します。

Istio と Kubernetes、Spinnaker を使用したカナリア デプロイ(Cloud Next '19)

Kubernetes と Istio を使用すると、カナリア リリースなど、高度なロールアウト パターンに対応する豊富なサポートを利用することで、より簡単かつ安全にアプリケーションをデプロイできます。

GCP のサーバーレス インフラストラクチャでコンテナを実行する(Cloud Next '19)

GCP の新しいフルマネージド サーバーレス プラットフォームでは、インフラストラクチャを気にすることなく、使用した分だけ支払うだけで任意の HTTP ステートレス コンテナを実行できます。ここでは、この新しいプロダクトの特徴について詳しく説明します。新しいユースケースのデモもご覧いただけます。サーバーレスでコンテナを実行することで可能性が広がります。また、すでに利用されているお客様の声もご紹介します。

Knative の 1 年後: サーバーレス、Kubernetes の現状(Cloud Next '19)

Kubernetes でサーバーレス開発に必要な技術を提供する Knative は、2018 年の登場以来、著しい成長と普及を遂げています。2019 年は、Knative をベースにどのようなプロダクトがリリースされるのでしょうか。詳細をご覧ください。