Google AI StudioのサイトをCloud Runで公開する方法と課金リスク対策まとめ

Google AI Studio や Antigravity で作った Web アプリ・LP を、Google Cloud の Cloud Run で公開する機会が増えています。
この記事では、Cloud Run での公開方法・注意点・予期せぬ課金を防ぐためのベストプラクティスを、実際に試した経験をもとにまとめます。
Cloud Runとはなにか
Cloud Run は、Google Cloud が提供するサーバーレスのコンテナ実行環境です。
サーバーの準備や OS 管理なしに、コンテナ化したアプリをデプロイするだけで HTTPS 対応の URL が払い出され、すぐ Web 上に公開できます。
アクセス量に応じてインスタンスが自動でスケールし、アクセスがないときはインスタンス数が 0 になって課金も止まる「スケール・トゥ・ゼロ」が特徴です。
AI Studio から Cloud Run へのデプロイ方法

AI Studio でアプリや LP を作ったら、画面内の「デプロイ」ボタンを押すと、Google Cloud プロジェクトを選択する画面が表示されます。
プロジェクトを選んで実行すると、裏で次のことが自動的に行われます。
- アプリのソースコードがビルドされ、コンテナイメージが作成される
- 選んだ GCP プロジェクト内に Cloud Run サービスが立ち上がる
https://[サービス名]-[ランダム].run.appという URL が払い出される- その URL でインターネットからアクセスできる状態になる
「AI Studio 上のプレビュー」ではなく、自分の GCP プロジェクトのリソースとして実際に動いている本番サービスになる点に注意が必要です。
公開後に押さえておくべき概念
Cloud Run でデプロイすると、次のリソースが関係してきます。
| サービス | 役割 |
|---|---|
| Cloud Run | コンテナ化したアプリをサーバーレスで動かす実行環境 |
| Firebase / Firebase Hosting | 認証・DB・ホスティングなどアプリのバックエンド一式 |
| Firestore | Firebase に含まれる NoSQL ドキュメントデータベース |
| Cloud Logging | Cloud Run のアクセスログやエラーログを自動で保存するサービス |
特に Cloud Logging は Cloud Run を使うと自動的にログが蓄積されていくため、ログの量によっては少額の課金が発生することがあります。
課金アカウントについて知っておくこと
課金アカウントが自動で紐づく
GCP の仕様として、課金アカウントが1つだけある場合、新しく作ったプロジェクトにその課金アカウントが自動でリンクされることがあります。
また、AI Studio から Cloud Run へデプロイする際は「Billing が有効なプロジェクト」が必須条件なので、紐づきが起きやすい状況になっています。
「自分で設定した覚えはないのに課金アカウントに紐づいていた」という状況が起きやすいため、新しいプロジェクトを作ったら必ず「課金 → このプロジェクトがどの課金アカウントに紐づいているか」を確認する習慣を付けておくことをおすすめします。
Cloud Run の無料枠

Cloud Run には、毎月次の無料枠が用意されています。
- リクエスト数:200万回/月
- vCPU秒:18万秒/月
- メモリ:36万 GiB秒/月
- 北米からの外向き通信:1GB/月
月間 PV 6,000 程度の LP・デモサイトであれば、1PVあたり10リクエストと見積もっても月約6万リクエスト程度で、無料枠の3%前後に収まります。
リクエスト・CPU・メモリいずれも無料枠に十分な余裕があり、ほぼ0円で運用できる規模感です。
予期せぬ課金を防ぐためのベストプラクティス
1. スケーリング設定でインスタンス数を制限する

Cloud Run には「最大インスタンス数(max instances)」という設定があります。
デフォルトでは最大100インスタンスまで自動スケールするため、突発的なトラフィックで課金が跳ね上がるリスクがあります。
個人・検証用途では、最大インスタンス数を 1 に設定することを強くおすすめします。
設定場所:Cloud Run コンソール → 対象サービス → 「スケーリングを編集」→「自動スケーリング」→「インスタンスの最大数」を 1 に設定 → 保存
この設定にすると、どれだけアクセスが増えても1台分のサーバーコスト以上にはなりません。
なお、1インスタンスあたりデフォルトで最大80リクエストを同時処理できるため、月6000PV程度であれば1インスタンスで十分対応できます。
2. 予算(Budget)とアラートを設定する

Google Cloud の「課金 → 予算とアラート → Create budget」から、課金アカウント単位で予算とアラートを設定できます。
おすすめの設定:
- 予算額:100〜500円/月(実験・検証用なら低めに)
- 通知しきい値:50% / 90% / 100% / 150%
予算アラートは「通知するだけ」で、自動的に課金を止める機能ではありません。
アラートに気づかなかった場合はそのまま課金が増え続けるため、通知メールは必ず確認できるアドレスに設定してください。
3. 使い終わったサービスはすぐ削除する
Cloud Run には「一時停止」ボタンがありません。止め方のパターンは次の3種類です。
| 方法 | 内容 |
|---|---|
| サービス削除 | Cloud Run コンソール → 対象サービスにチェック → 「削除」。URLも無効になる |
| インスタンス数を0に設定 | スケーリングを手動にして最大インスタンス数を0にする。再開できる |
| allUsersの権限を外す | 外部アクセスをブロック。サービスは残るが外から触れなくなる |
一番シンプルで確実なのは「サービス削除」です。
4. 課金アカウントの棚卸しを定期的に行う
- 使っていないプロジェクトは課金を無効化するかプロジェクトを削除する
- 月1回程度、「課金 → レポート」で費目ごとの使用額を確認する
公開URLについて:デフォルト vs カスタムドメイン
Cloud Run でデプロイすると https://xxxx.run.app という URL が自動発行されます。
このデフォルト URL は変更できませんが、自分のドメインをマッピングすることは可能です。
| 用途 | おすすめのURL |
|---|---|
| ブログのデモ・一時的な検証公開 | run.app デフォルトURLでOK |
| 本番LP・長期運用・SEO流入を取りたい | 独自ドメインをマッピングする |
デフォルト URL でも HTTPS は自動で有効になっており、セキュリティ面で致命的な問題があるわけではありません。
ただし、将来インフラを変えたときに URL が変わる・ブランド感が出しにくいといったデメリットがあるため、本格運用時は独自ドメインを紐づけることをおすすめします。
カスタムドメインの設定手順
- Google Search Console でドメインの所有権を確認する(TXTレコードをDNSに追加)
- Cloud Run コンソール → 「カスタムドメインを管理」→「マッピングを追加」
- 使いたいサブドメインを入力し、表示された A/AAAA レコードをDNSに追加する
- 数分〜数時間で SSL 付きカスタムドメインが有効になる
入力データの学習利用について
Cloud Run 自体はインフラサービスのため、デプロイしたコードや通信内容が学習に使われることはありません。
ただし、AI Studio 側で作業している間(無料のブラウザ UI を個人 Google アカウントで使っている場合)は、プロンプトやコードがモデル改善・学習に利用される前提と考えておくのが安全です。
機密性の高いプロジェクトには、GCP 課金有効化 + Vertex AI / 有料枠のGemini API 経由に切り替えることをおすすめします。
まとめ:個人開発者向けの推奨設定チェックリスト
Cloud Run を安全に使い続けるために、次の設定が揃っているか確認しましょう。
- Cloud Run サービスの「最大インスタンス数」を 1 に設定している
- 課金アカウントに予算(例:月100円)+アラートを設定している
- 使い終わったサービスは削除している
- 新規プロジェクト作成後に課金アカウントの紐づきを確認している
- 月1回程度、課金レポートを眺める習慣がある
個人の検証や LP のデモ公開であれば、無料枠内でほぼコストをかけずに運用できます。
「課金アカウントが自動リンクされる」「予算アラートは通知するだけ」という2点は特に覚えておくと、いざというときに焦らずに対処できます。