Skip to content

インフラ概要 ​

LiGA を本番運用するためのクラウド構成と、staging 環境の現状。

全体像 ​

レイヤサービスプラン
Web (Next.js)Netlify Pro$20/月 / 1 site (branch deploy で staging + prod)
API (Hono)Cloud Run v2従量課金 (min=0 staging / min=1 prod)
DBCloud SQL (PostgreSQL 17)staging: db-f1-micro / prod: db-custom-1-3840
画像Cloudflare R2Free (10GB)
決済Stripetest mode (staging) / live mode (prod)
メールSendGridFree (100/日)
監視SentryFree (5,000 エラー/月)
SourceGitHub (astyleinc/liga-mono)後日 顧客 Org へ Transfer

詳細は サーバー構成 と リソース図 を参照。

IaC 方針 ​

  • Terraform で GCP のリソースを全て管理 (infra/terraform/)
  • 同 GCP project に staging + prod を同居、リソース名 / Secret / SA は _${env} で suffix 付与
  • State は GCS バケット (<project-id>-tf-state)、prefix で env 別管理
  • 機密値は Secret Manager の slot だけ TF が作り、値は外部投入 (state に乗らない)
  • IAM は per-resource に scope して、staging SA が prod の secret を読めない設計

詳細は IaC 設計と運用。

staging 環境の現状 ​

進捗内容
✅GCP プロジェクト作成 & 招待受領 (project-0fccf552-fc68-4756-9c1)
✅Netlify Site 作成 (liga-staging) + GitHub 連携
✅Terraform で Cloud SQL / Cloud Run / IAM / WIF / Secret slot 作成
✅Secret 値 12 個投入 (BETTER_AUTH / Stripe test / その他 TODO)
✅DB マイグレ + seed 完了 (大会 9 件)
✅GitHub Secrets / Variables 投入 (staging Environment)
✅Netlify env vars 投入 (production context、DATABASE_URL は public IP + sslmode=no-verify)
✅Cloud SQL に authorized_networks 0.0.0.0/0 追加 (staging のみ)
✅Cloud Run 初回 deploy (Dockerfile 修正 × 2 後に成功)
✅Netlify 再 deploy で env 反映
✅動作確認 — https://liga-staging.netlify.app/ で HTTP 200 🎉
✅Stripe webhook URL 登録 (we_xxx + whsec_... 投入、stripe trigger で署名検証通過確認)
✅管理者アカウント作成 (j.myoga.work@gmail.com → role=admin)
⬜(リリース直前) Cloud SQL を Private IP に切替
⬜(ドメイン取得後) 独自ドメイン + SendGrid + OAuth リダイレクト URI 更新

詳細手順は staging 立ち上げログ。 開発中の反映 / マイグレ / 巻き戻しは 開発フロー。

料金目安 ​

  • staging のみ: 約 ¥4,800〜5,600 / 月
  • staging + prod (本番化後): 約 ¥9,200〜11,000 / 月
  • 初回 90 日は GCP $300 Free Trial で実質 ¥3,000 / 月

詳細は 料金見積もり。

関連ドキュメント ​