◉GEMINI LABEN
●ARGON — gemini-4-argon が 10/13 に GA。複雑なコーディング・エージェント・数学・科学向けです●DEEP RES — deep-research-pro-preview-12-2025 は 10/23 に停止、残り6日。移行先は deep-research-preview-04-2026●NANO — gemini-nano-banana-2.1 が GA(10/06)。gemini-3.1-flash-image は非推奨で停止日は未発表です●MCP — ツール結果が 8.5万トークンに膨らんだ事例を、ADK で 310 トークンに包んで抑えた報告が出ています●FLASH — gemini-3.7-flash と 3.5-flash は新しい Flash モデルに自動で回されます(10/08)●NEW — クラッシュ報告を毎回ゼロから読ませない — 既知バグ早見表を先に grep し…●ARGON — gemini-4-argon が 10/13 に GA。複雑なコーディング・エージェント・数学・科学向けです●DEEP RES — deep-research-pro-preview-12-2025 は 10/23 に停止、残り6日。移行先は deep-research-preview-04-2026●NANO — gemini-nano-banana-2.1 が GA(10/06)。gemini-3.1-flash-image は非推奨で停止日は未発表です●MCP — ツール結果が 8.5万トークンに膨らんだ事例を、ADK で 310 トークンに包んで抑えた報告が出ています●FLASH — gemini-3.7-flash と 3.5-flash は新しい Flash モデルに自動で回されます(10/08)●NEW — クラッシュ報告を毎回ゼロから読ませない — 既知バグ早見表を先に grep し…
記事一覧/開発ツール
⟐ 開発ツール/2026-07-02中級

ワンクリックデプロイの『その先』— AI Studio から Cloud Run に出した Gemini アプリを本番に引き上げる点検手順

AI Studio の build タブから Cloud Run へワンクリックデプロイした Gemini アプリは、そのままでは本番相当ではありません。APIキーの保管・認証・費用上限・観測の4点を、gcloud コマンドつきで点検する手順を整理しました。

gemini119ai-studio3cloud-run6deploymentproduction105gcp

✦ プレミアム記事

最近 AI Studio の build タブに加わった Cloud Run へのワンクリックデプロイを、社内ツール程度のつもりで作った Gemini アプリに試したときのことです。数分待つだけで公開 URL が発行され、ブラウザから動くものが確認できました。正直、ここまでの体験は見事だと感じました。ただ、そのまま URL を人に共有しようとして手が止まりました。個人開発で複数のサービスを Cloud Run に載せてきた経験から言うと、「動く URL がある」と「公開してよい状態にある」の間には、それなりの距離があるからです。

デプロイされたサービスの設定を gcloud run services describe で眺めてみると、案の定というべきか、点検したい箇所がいくつも見つかりました。API キーはどこに置かれているのか。URL は誰でも叩けるのか。インスタンスはどこまでスケールし、費用の天井はあるのか。この構成を今後どうやって更新していくのか。どれもプロトタイプの段階では気にしなくてよかったことばかりで、公開した瞬間から全部が自分の問題になります。

そこで、ワンクリックデプロイの直後に私自身が実際に行った点検を、再現できる手順として整理しておくことにしました。生成 AI が書いたコードを捨てて作り直すのではなく、活かしたまま運用レベルへ引き上げる、という方針の記録です。

ワンクリックデプロイが済ませてくれること・くれないこと

まず境界をはっきりさせておきます。ワンクリックデプロイが肩代わりしてくれるのは、おおよそ次の範囲です。

  • コンテナのビルドと Cloud Run サービスの作成
  • 公開 URL の発行と HTTPS の終端
  • Gemini API を呼ぶための資格情報の受け渡し(動く状態にすること)

一方で、次の判断は誰も肩代わりしてくれません。

  • その URL を 誰に 叩かせるか(認証・認可)
  • API キーやシークレットを どこで 管理し続けるか
  • トラフィックが想定を超えたとき いくらまで 払うか
  • 生成されたコードを どう更新し続ける か

プロトタイプと本番の差は機能ではなく、この4つの答えを持っているかどうかです。以降、順番に埋めていきます。

点検 1: API キーの居場所を確認する

最初に見るべきはここです。デプロイ直後の構成では、Gemini API キーが環境変数としてサービスに直接設定されていることがあります。環境変数は gcloud run services describe やコンソールを見られる人全員に露出しますし、リビジョンの設定としてコピーされ続けます。

2026 年 6 月 19 日以降、制限のない API キーからのリクエストは Gemini API 側で拒否されるようになりました。キーに制限を付けるのは当然の前提として、私はさらに一歩進めて、キー本体を Secret Manager に移すところまでを「公開前の最低ライン」にしています。

# 1. シークレットを作成してキーを格納する
printf '%s' "YOUR_GEMINI_API_KEY" | \
  gcloud secrets create gemini-api-key --data-file=-
 
# 2. Cloud Run のサービスアカウントに読み取り権限を付ける
gcloud secrets add-iam-policy-binding gemini-api-key \
  --member="serviceAccount:my-service-sa@my-project.iam.gserviceaccount.com" \
  --role="roles/secretmanager.secretAccessor"
 
# 3. 環境変数の直置きをやめ、シークレット参照に切り替える
gcloud run services update my-genai-app \
  --region=asia-northeast1 \
  --remove-env-vars=GEMINI_API_KEY \
  --set-secrets=GEMINI_API_KEY=gemini-api-key:latest

3 のコマンドが成功すると、アプリケーションコードからは今までどおり GEMINI_API_KEY 環境変数として見えるため、生成されたコードを 1 行も書き換えずに 保管場所だけを差し替えられます。ここがこの手順の気に入っているところで、プロトタイプのコードに手を入れる前に安全性だけ先に上げられます。

あわせて、デフォルトの Compute Engine サービスアカウントで動いている場合は、専用のサービスアカウントを作って付け替えることを推奨します。デフォルトのままだと、プロジェクト内の他リソースへ広い権限を持ったまま公開サービスが動くことになります。

gcloud iam service-accounts create my-service-sa \
  --display-name="genai app runtime"
 
gcloud run services update my-genai-app \
  --region=asia-northeast1 \
  --service-account=my-service-sa@my-project.iam.gserviceaccount.com
✦

ここまでお読みいただきありがとうございます。

この記事の続きを読む

この先には、実装コードやベンチマーク結果など、実務でお役に立てる内容をご用意しています。このサイトは広告を掲載しておらず、サーバーや開発にかかる費用はメンバーの皆様のご支援で成り立っています。もしお役に立てていましたら、ご支援いただけますと大変ありがたいです。

この記事で得られること
✦ワンクリックデプロイ直後の Cloud Run サービスに残る危険な初期状態を、順番の決まった点検手順で本番相当まで引き上げられる
✦API キーの Secret Manager 移行・呼び出し元の認証・費用の天井設定を、コピーして実行できる gcloud コマンドとして持ち帰れる
✦プロトタイプ由来のコードを作り直さずに CI と観測へ載せ替えるか、それとも捨てて書き直すかの判断基準を自分の言葉で説明できるようになる
Stripe による安全な決済 · いつでもキャンセル可能
✦

この記事を購入する

この先の内容をすべてお読みいただけます。一度のご購入で、いつでも何度でもアクセスできます。このサイトは広告を掲載しておらず、皆さまのご支援がサーバー費用などの運営を支えています。

または
メンバーシップなら全記事が読み放題 →
シェア

お読みいただきありがとうございます

Gemini Lab は広告なしで運営しており、サーバー費用などの運営コストはメンバーシップのご支援で賄っています。実装コード・ベンチマーク・本番設計パターンなど、実務でお役立ていただける記事を毎日更新しています。もし読んでよかったと感じていただけましたら、ぜひご覧ください。

  • ✦コピー&ペーストで使える実装コード付き
  • ✦毎日新しい上級ガイドを追加
  • ✦¥580/月 または ¥1,480 の永久アクセス
メンバーシップを見る →

関連記事

⟐ 開発ツール2026-10-06
Veo 3.1 の preview 3種が 10/22 に止まります。差し替えの前に、呼び出し箇所の棚卸しから始めました
Veo 3.1 の preview 3種は 10/22 に提供終了、移行先は gemini-omni-1.1-flash です。モデル名を置換する前に、リポジトリ内の呼び出し箇所を洗い出す検索スクリプトと、期日を過ぎたら黙って別モデルへ流れずに止まる設定の書き方をまとめます。
⟐ 開発ツール2026-09-03
Gemini にコードをまとめて渡せるようになった日から、同じフォルダを選ぶのをやめました
複数のコードファイルをまとめて渡せるようになると、難しさは貼り付けから選択へ移ります。自分の Next.js リポジトリで依存グラフを実測し、フォルダ単位の選び方が呼び出し側を1件も拾わなかった経緯と、いま使っている選択手順を書き残します。
⟐ 開発ツール2026-08-21
通知文の長さ指示が英語版だけ効かなかった理由と、生成後に幅で詰める実装
日英2言語のプッシュ通知を Gemini に生成させたところ、英語版だけが実機で途切れていました。原因は文字数での長さ指示です。表示幅の実測値と、生成後に詰めるフィッティング実装をまとめました。