Skip to content

docs(dev): ローカル開発セットアップガイド(docs/dev/local-setup.md) #218

Description

@win2cot

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 の構成(目次案)

  1. 前提条件
    • WSL 2(Ubuntu 24.04)
    • Docker Desktop + WSL integration 有効化
    • JDK 21(SDKMAN! 推奨)
    • gh CLI(Issue 操作用)
  2. リポジトリ取得
    • git clone git@github.com:win2cot/tasks-webapi.git
  3. Docker Compose 起動
    • docker compose -f docker-compose.local.yml up -d
    • 起動確認(docker compose ps)
  4. 環境変数設定
    • .env.local のテンプレートと使い方
    • env vars 一覧
  5. ./gradlew :webapi:bootRun 起動
    • source .env.local && ./gradlew :webapi:bootRun
    • Flyway migration が走ることの確認
  6. Keycloak Realm 動作確認
    • admin console http://localhost:8080(admin / admin)
    • Test User でログイン → JWT 取得
  7. Frontend skeleton 起動
    • web/ を軽量 HTTP サーバで配信
    • ブラウザで http://localhost:5500/index.html を開く
  8. 動作確認 E2E(Setup 1-7 とリンク)
    • ログイン → JWT 取得 → tasks-webapi API call → 成功の流れ
  9. トラブルシューティング
    • 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 等のスクショ(将来補強)

受入条件

  • docs/dev/local-setup.md が存在
  • 上記目次の全セクション(1〜9)が記載されている
  • 各手順がコマンドレベルでコピペ可能
  • env vars 一覧が表形式で記載されている
  • トラブルシューティング(9)に最低 3 項目以上の Q&A
  • 30 分以内に新規環境を立ち上げられる粒度であること(目視確認 / セルフチェック)
  • Setup 1-1〜1-5 の成果物への参照(リンク)が網羅されている

想定影響範囲

  • Sprint 0 着手前の開発者 onboarding
  • Setup 1-7 E2E テスト手順との一貫性
  • claude-impl bot が将来このガイドを参照可能性あり

関連

備考

  • task-type: task-type:design(docs 主体)
  • 優先度: priority/p2(完了が望ましいが Sprint 0 着手後の補強も可)
  • area: area/docs

Metadata

Metadata

Assignees

No one assigned

    Labels

    area/docsdocs/ 配下のドキュメント(設計書・規約・ADR 等)変更claude:ready実装着手 OK のサイン。人が付与すると実装 Claude が起動priority/p2Medium。完了が望ましいが柔軟に判断可task-type:design規約・ADR・設計書の追加/変更タスク

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions