0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

【Codex使用】GCP Cloud RunにPython Flask Hello WorldをGithub Actionsでデプロイするまで

Last updated at Posted at 2025-06-09

やりたいこと:
Python Flask Hello WorldをGithub ActionsでCICDパイプライン経由でCloud Runにデプロイする。

この記事ではCloud Runのプロジェクト作成とGithub actionsに渡すキーの作成まで行います。

事前準備
CLIのインストール
https://cloud.google.com/sdk/docs/install?hl=ja

Pythonのインストール
Win storeからインストール

CLIのインストール

インストーラが最後まで行けば、CMDが起動してログインを求められる

image.png

CLIから新規プロジェクトを作成
認証完了後そのまま作業可能
image.png

作成したプロジェクトIDをひとまず変数化
set PROJECT_ID=XXX
echo Project ID: %PROJECT_ID%
作成したプロジェクトを選択
gcloud config set project %PROJECT_ID%
必要なAPIを有効化
gcloud services enable run.googleapis.com cloudbuild.googleapis.com artifactregistry.googleapis.com

エラー「type: googleapis.com/billing-enabled」が発生した場合、プロジェクトに請求先を紐付ける必要があります。

プロジェクトに課金アカウントをリンク
1️⃣ 左メニュー:課金 → アカウント管理
2️⃣ 対象の課金アカウントを選択
3️⃣ 「アカウント管理」→ 「プロジェクトを管理」へ移動
4️⃣ さっき作成した%PROJECT_ID%を選択し、課金アカウントを関連付ける

gitfub Actionsがデプロイに使用するアカウントの作成と権限の付与
:: サービスアカウント作成
gcloud iam service-accounts create github-actions-deployer --display-name="GitHub Actions Deployer"
:: 権限を付与
gcloud projects add-iam-policy-binding %PROJECT_ID% --member="serviceAccount:github-actions-deployer@%PROJECT_ID%.iam.gserviceaccount.com" --role="roles/run.admin"
gcloud projects add-iam-policy-binding %PROJECT_ID% --member="serviceAccount:github-actions-deployer@%PROJECT_ID%.iam.gserviceaccount.com" --role="roles/iam.serviceAccountUser"
gcloud projects add-iam-policy-binding %PROJECT_ID% --member="serviceAccount:github-actions-deployer@%PROJECT_ID%.iam.gserviceaccount.com" --role="roles/storage.admin"

サービスアカウントキーを作成

このキーをgithub actionsで使用できます
キーはカレントディレクトリにjson形式で出力されています。

キー出力
gcloud iam service-accounts keys create key.json --iam-account=github-actions-deployer@%PROJECT_ID%.iam.gserviceaccount.com

いったんここまで
次回は、github actionsにシークレットキーを追加します(key.json)

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?