From a8e5e2fba053513c0e09414008f0c65cfc3fbd3a Mon Sep 17 00:00:00 2001 From: pro Date: Mon, 26 Jan 2026 12:53:55 +0900 Subject: [PATCH] =?UTF-8?q?docs:=EB=8D=B0=EC=9D=B4=ED=84=B0=EB=B2=A0?= =?UTF-8?q?=EC=9D=B4=EC=8A=A4=20=EC=95=84=ED=82=A4=ED=85=8D=EC=B2=98=20?= =?UTF-8?q?=EA=B7=9C=EC=B9=99=20=EC=B6=94=EA=B0=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 모든 마이그레이션은 API 프로젝트에서만 관리 - MNG database/migrations 폴더에 파일 생성 금지 - 마이그레이션 실행은 sam-api-1 컨테이너에서만 Co-Authored-By: Claude Opus 4.5 --- CLAUDE.md | 56 ++++++++++++++++++++++++++++++++++++++++++++++++++----- 1 file changed, 51 insertions(+), 5 deletions(-) diff --git a/CLAUDE.md b/CLAUDE.md index d824550..a7b729f 100644 --- a/CLAUDE.md +++ b/CLAUDE.md @@ -56,6 +56,52 @@ --- +## 데이터베이스 아키텍처 (필수 규칙) + +> **경고: 이 규칙을 반드시 준수하세요!** + +### 핵심 원칙 + +**모든 데이터베이스 관련 파일은 API 프로젝트에서만 관리합니다.** + +| 항목 | API (`/home/aweso/sam/api`) | MNG (`/home/aweso/sam/mng`) | +|------|----------------------------|----------------------------| +| 마이그레이션 | ✅ 여기에 생성 | ❌ 생성 금지 | +| 시더 | ✅ 여기에 생성 | ⚠️ MNG 전용만 허용 | +| 팩토리 | ✅ 여기에 생성 | ❌ 생성 금지 | + +### 금지 사항 + +``` +❌ /home/aweso/sam/mng/database/migrations/ 에 파일 생성 금지 +❌ MNG에서 테이블 생성/수정 마이그레이션 작성 금지 +``` + +### 허용 사항 + +``` +✅ /home/aweso/sam/api/database/migrations/ 에 모든 마이그레이션 생성 +✅ MNG에서는 MngMenuSeeder 같은 MNG 전용 시더만 허용 +``` + +### 마이그레이션 실행 + +```bash +# 마이그레이션은 반드시 API 컨테이너에서 실행 +docker exec sam-api-1 php artisan migrate + +# MNG 컨테이너에서 마이그레이션 실행 금지 +# docker exec sam-mng-1 php artisan migrate ← 사용하지 않음 +``` + +### 이유 + +- MNG: 프론트엔드/관리자 화면 담당 (컨트롤러, 뷰, 라우트) +- API: 백엔드/데이터베이스 담당 (마이그레이션, 모델 정의, API) +- 단일 DB를 두 프로젝트가 공유하므로 마이그레이션은 한 곳에서만 관리 + +--- + ## Docker 환경 (필수 인지) > **중요: 로컬 개발 환경은 Docker 기반입니다!** @@ -86,8 +132,8 @@ docker exec sam-api-1 php artisan <명령어> # 예시: 시더 실행 docker exec sam-mng-1 php artisan db:seed --class=MngMenuSeeder -# 예시: 마이그레이션 실행 -docker exec sam-mng-1 php artisan migrate +# 예시: 마이그레이션 실행 (API에서만!) +docker exec sam-api-1 php artisan migrate # 예시: 캐시 클리어 docker exec sam-mng-1 php artisan cache:clear @@ -95,7 +141,7 @@ docker exec sam-mng-1 php artisan cache:clear ### 체크리스트 (명령 실행 시) -- [ ] `php artisan` 명령 → `docker exec sam-mng-1 php artisan` 사용 -- [ ] `composer` 명령 → `docker exec sam-mng-1 composer` 사용 +- [ ] `php artisan` 명령 → `docker exec sam-mng-1 php artisan` 또는 `sam-api-1` 사용 +- [ ] `composer` 명령 → `docker exec sam-mng-1 composer` 또는 `sam-api-1` 사용 - [ ] DB 시더 실행 필요 시 → Docker를 통해 실행 -- [ ] 마이그레이션 필요 시 → Docker를 통해 실행 +- [ ] **마이그레이션은 반드시 API에서 실행** → `docker exec sam-api-1 php artisan migrate`