AI駆動開発のステージング環境をAWS EC2に構築した話
12日間でAWS EC2にHTTPS環境を構築 — Docker+Nginx+Let's Encryptの実践記
ローカル開発環境の限界
wagahiアプリの開発がMVP_04に入り、いよいよステージング環境の構築が必要になりました。ローカル開発環境(AlmaLinux 10上のVMware仮想マシン)では動作確認はできますが、HTTPS通信、外部からのアクセス、本番に近い環境での試験は不可能です。
MVP_04の期間は2025年11月23日〜12月4日の12日間。この間にステージング環境の構築とUX改善機能の実装を並行して進めました。
AWS EC2 + Docker構成
ステージング環境のアーキテクチャは以下の通りです。
- EC2インスタンス: Amazon Linux 2023上にDocker環境を構築
- Nginx: リバースプロキシとして、フロントエンド(静的ファイル)とバックエンドAPI(Dockerコンテナ)を振り分け
- Let's Encrypt: 無料SSL証明書による HTTPS化
- PostgreSQL: データベースサーバー
- Redis: セッション管理とAPIレート制限のキャッシュ
- MailHog: メール送信のテスト用(Magic Link認証のメール確認)
特にこだわったのは、開発環境との設定差異を最小化することです。Spring Bootのプロファイル機能(application-staging.yml)を活用し、データベース接続情報やAPI設定を環境変数で切り替える設計にしました。
デプロイ自動化スクリプト
ステージング環境へのデプロイを効率化するため、deploy-staging.shというワンコマンドデプロイスクリプトを作成しました。
このスクリプトは以下を自動実行します。
- SSH接続確認
- フロントエンドビルド(Vite + staging mode)
- フロントエンドをEC2に転送・配置
- バックエンドビルド(Maven)
- WARファイルをEC2に転送
- Dockerコンテナ再構築・起動
- HTTP疎通確認
コマンド一つでローカルのコードがステージング環境にデプロイされます。フロントエンドのみ、バックエンドのみのデプロイも可能で、開発中の高速なフィードバックループを実現しました。
AI自動命名機能 v1.6.0
MVP_04で実装した注目機能の一つが、AI自動命名機能です。
wagahiアプリでは、ユーザーがカメラで撮影した対象物をGemini APIが分析し、キャラクターの名前を自動生成します。v1.6.0では、変則的な入力値(極端に長い文字列、特殊文字を含む入力、空白のみの入力等)への対応を強化しました。
自動命名のプロセスは以下の通りです。
- 撮影画像をGemini APIのVision機能で分析
- 対象物の特徴と地域性を抽出
- 夏目漱石風の命名プロンプトで名前を生成
- ユーザーが名前を確認・変更可能
TCGカード風UIの実装
キャラクター表示にトレーディングカードゲーム(TCG)風のUIを採用しました。
各キャラクターカードには、名前、画像、ステータス、そしてflavorText(カードゲームの一口解説テキスト)が表示されます。flavorTextはGemini APIがキャラクターの性格と地域性から自動生成し、データベースに保存されます。
このUI設計は、位置情報ゲームの「コレクション要素」を強化する意図があります。ユーザーが各地で出会ったキャラクターをカード形式で一覧できることで、探索のモチベーションを高めます。
RPM/TPM制御とRedisキューイング
ステージング環境で本格的な負荷テストを行うにあたり、Gemini APIのRPM(Requests Per Minute)/ TPM(Tokens Per Minute)制御を強化しました。
Redis をキューイング基盤として活用し、APIリクエストを順序制御します。同時に、指数バックオフリトライ機構を組み合わせることで、API制限に到達した場合でも自動的にリカバリされます。
この仕組みにより、複数ユーザーが同時にチャット機能を使用しても、APIエラーが発生せず安定した応答が得られるようになりました。
E2E試験の完了
ステージング環境の構築により、ようやくエンドツーエンド(E2E)試験が実施可能になりました。
E2E試験では、ユーザー登録からキャラクター作成、チャット、ログアウトまでの一連のフローを、実際のステージング環境上で検証します。ローカル開発環境では発見できなかった、HTTPS証明書の検証エラー、CORSの設定ミス、Dockerネットワーク間の通信問題など、本番に近い環境でこそ発見できる問題が見つかりました。
これらの問題をすべて解決し、IT-E2E-001〜003の3項目、15期待結果、100%合格を達成しました。
次回予告
次回は、管理者ダッシュボードをAIと共に設計・実装した話をお伝えします。プログラム設計書99件の追加作成、189件の指摘対応、管理者MFA認証(TOTP)の実装。MVP_05で取り組んだ運用基盤の構築について記録します。
本記事は2025年11月〜12月時点の情報に基づいています。
著者: 株式会社シーテン — インフラ系から宇宙関連システムまで20年以上の開発経験を持つ技術者集団。2025年より生成AI・AIエージェントを活用したAI駆動開発に本格参入し、自社プロダクト「wagahi」の開発を通じて実践知見を蓄積中。
関連記事:
投稿者プロフィール





