Phase 1 Setup 1-6: ローカル開発セットアップガイド(docs/dev/local-setup.md)
概要
Setup 1-1〜1-5 の成果(Docker Compose + Keycloak Realm + Flyway + application.yml + web/ skeleton)をまとめ、新規開発者(将来の自分含む)が docs/dev/local-setup.md に従えば 30 分以内に local 環境を立ち上げられる ガイドを作成する。
詳細仕様: docs/architecture/infrastructure-plan.md v5 §5.2(Setup 1-6)。
背景
ローカル環境の構築手順が頭の中だけにあると、再現性が低い + Sprint 0 着手後の開発者(claude-impl bot 含む)が困る。明示的にドキュメント化することで:
- 新規環境セットアップが script ライクに進む
- Setup 1-7(E2E 動作確認)の手順と一貫性
- 将来の onboarding コスト削減
実装内容
A. docs/dev/local-setup.md の構成(目次案)
- 前提条件
- WSL 2(Ubuntu 24.04)
- Docker Desktop + WSL integration 有効化
- JDK 21(SDKMAN! 推奨)
- gh CLI(Issue 操作用)
- リポジトリ取得
git clone git@github.com:win2cot/tasks-webapi.git
- Docker Compose 起動
docker compose -f docker-compose.local.yml up -d
- 起動確認(
docker compose ps)
- 環境変数設定
.env.local のテンプレートと使い方
- env vars 一覧
./gradlew :webapi:bootRun 起動
source .env.local && ./gradlew :webapi:bootRun
- Flyway migration が走ることの確認
- Keycloak Realm 動作確認
- admin console
http://localhost:8080(admin / admin)
- Test User でログイン → JWT 取得
- Frontend skeleton 起動
web/ を軽量 HTTP サーバで配信
- ブラウザで
http://localhost:5500/index.html を開く
- 動作確認 E2E(Setup 1-7 とリンク)
- ログイン → JWT 取得 → tasks-webapi API call → 成功の流れ
- トラブルシューティング
- Docker WSL integration が動かない場合
- MySQL ポート競合
- Keycloak Realm import 失敗
- Flyway 接続エラー
B. 既存設計書との整合
.claude/CLAUDE.md の Commands セクションとリンク
docs/specs/開発計画書.md v1.3 §4.3.1 / §11.1 と整合
C. スクリーンショット(任意、後追い可)
- Keycloak admin console / Realm Settings 等のスクショ(将来補強)
受入条件
想定影響範囲
- Sprint 0 着手前の開発者 onboarding
- Setup 1-7 E2E テスト手順との一貫性
- claude-impl bot が将来このガイドを参照可能性あり
関連
備考
- task-type:
task-type:design(docs 主体)
- 優先度:
priority/p2(完了が望ましいが Sprint 0 着手後の補強も可)
- area:
area/docs
Phase 1 Setup 1-6: ローカル開発セットアップガイド(docs/dev/local-setup.md)
概要
Setup 1-1〜1-5 の成果(Docker Compose + Keycloak Realm + Flyway + application.yml + web/ skeleton)をまとめ、新規開発者(将来の自分含む)が
docs/dev/local-setup.mdに従えば 30 分以内に local 環境を立ち上げられる ガイドを作成する。詳細仕様:
docs/architecture/infrastructure-plan.mdv5 §5.2(Setup 1-6)。背景
ローカル環境の構築手順が頭の中だけにあると、再現性が低い + Sprint 0 着手後の開発者(claude-impl bot 含む)が困る。明示的にドキュメント化することで:
実装内容
A.
docs/dev/local-setup.mdの構成(目次案)git clone git@github.com:win2cot/tasks-webapi.gitdocker compose -f docker-compose.local.yml up -ddocker compose ps).env.localのテンプレートと使い方./gradlew :webapi:bootRun起動source .env.local && ./gradlew :webapi:bootRunhttp://localhost:8080(admin / admin)web/を軽量 HTTP サーバで配信http://localhost:5500/index.htmlを開くB. 既存設計書との整合
.claude/CLAUDE.mdの Commands セクションとリンクdocs/specs/開発計画書.mdv1.3 §4.3.1 / §11.1 と整合C. スクリーンショット(任意、後追い可)
受入条件
docs/dev/local-setup.mdが存在想定影響範囲
関連
Phase 1 Setup 1(due 2026-06-13)docs/architecture/infrastructure-plan.mdv5 §5.2備考
task-type:design(docs 主体)priority/p2(完了が望ましいが Sprint 0 着手後の補強も可)area/docs