Cloud Run,  GCP,  Kotlin,  Ktor

Cloud RunへGithubから継続的デプロイ

Table of Content

Cloud RunへGithubから継続的デプロイ

今回以下のようなフローを作成します。
https://app.diagrams.net/#G1C6CHKLsF7cvm0gjbBHA-Mz7js3FnGbeP

↓を参考に進めました

Cloud Run へのデプロイ  |  Cloud Build のドキュメント  |  Google Cloud

プロジェクト作成

アプリを作成・構築・メンテするためのGCPのプロジェクトを作成します。

スクリーンショット 2021-08-08 15.20.11.png

Cloud Run

Cloud Runのページから、サービスの作成を選択

スクリーンショット 2021-08-08 15.29.18.png

1. サービスの設定

サービス名を入力、リージョンを選択して、次へ

スクリーンショット 2021-08-08 15.31.12.png

2. サービスの最初のリビジョンの構成

ここで、ソース リポジトリから新しいリビジョンを継続的にデプロイする を選択し、
SET UP WITH CLOUD BUILD を押す

スクリーンショット 2021-08-08 15.33.02.png

3. Cloud Build の設定

Cloud Build の設定が開く

3.1 リポジトリの選択

スクリーンショット 2021-08-08 15.34.52.png

プロジェクトを新規作成した後であれば以下のようなメッセージが表示さえる。各々のAPIの設定を行う

  • イメージを作成するには、Cloud Build API が必要です。
  • (省略可)Container Analysis(無料)を使用してソース情報を取得して表示します

ボタンをぽちっと押すとAPI連携が始まる
スクリーンショット 2021-08-08 15.37.24.png

ここでは、以前作ったServer Side Kotlinnのリポジトリを指定しました。

https://qiita.com/sugasaki/items/d5800aedafc7dd3f528c

スクリーンショット 2021-08-08 15.39.55.png

リポジトリのミラーリングは未選択で進みました。

3.2 ブランチの選択

ブランチ選択

継続的デプロイに使用するブランチを選択します。

スクリーンショット 2021-08-08 15.44.48.png

Build Typeの選択

Githubのブランチ内にDockerfileをPUSH済なので、それを使います。
スクリーンショット 2021-08-08 15.47.43.png

入力終わったら保存を押します。

3.3 詳細設定

ポート番号や最大リクエスト数などの詳細設定ができます。
必要におうじて変更をおこない、必要がなければ、次へボタンを押下

スクリーンショット 2021-08-08 15.51.18.png

3.4 サービスをトリガーする方法の構成

スクリーンショット 2021-08-08 15.52.54.png

以下を選択して、作成ボタンを押す

  • すべてのトラフィックを許可する
  • 未認証の呼び出しを許可

注)未認証の呼び出しを許可を選択しないと、外部から作成したサービスにアクセスできないので選択すること。

作成ボタンを押すと「継続的デプロイを設定しています」の画面に切り替わります。

スクリーンショット 2021-08-08 15.56.48.png

Cloud Run管理画面へ

「継続的デプロイを設定しています」の画面で、しばらく待つとジョブの実行が完了します。

ジョブの実行が完了すると、URLが表示されます。

スクリーンショット 2021-08-08 16.02.40.png

URLにアクセスすると、作成したアプリが表示されます。

スクリーンショット 2021-08-08 16.11.47.png

継続的デプロイ

GithubへPUSHを検知して、Cloud Buildが起動します。

スクリーンショット 2021-08-08 16.07.46.png

ビルドが完了すると、デプロイされ、アプリが変更されます。

スクリーンショット 2021-08-08 16.13.43.png

以上です