Files
sam-api/CURRENT_WORKS.md

55 lines
1.9 KiB
Markdown
Raw Normal View History

# SAM API 저장소 작업 현황
## 2025-09-30 (월) - DB 연결 환경변수 오버라이딩 설정
### 주요 작업
- 로컬/Docker 환경 DB 연결 오버라이딩 설정
### 수정된 파일
#### 환경 설정
- `.env` (라인 29) - DB_HOST 로컬 설정 (127.0.0.1)
- 기존: `DB_HOST=${DB_HOST:-mysql}` (환경변수 파싱 오류)
- 변경: `DB_HOST=127.0.0.1` (로컬 MySQL 컨테이너 접근)
- Docker 환경은 docker-compose.yml에서 자동 오버라이드
### 작업 내용
#### DB 연결 오류 해결
**문제**:
- `.env` 파일의 `${DB_HOST:-mysql}` 형식이 Laravel에서 리터럴 문자열로 인식
- 에러: `php_network_getaddresses: getaddrinfo for ${DB_HOST failed`
**해결**:
1. `.env`: `DB_HOST=127.0.0.1` (로컬 기본값)
2. `docker-compose.yml`: 환경변수 `DB_HOST=mysql`로 오버라이드
3. 로컬/Docker 모두 정상 연결 확인
#### 환경변수 오버라이딩 구조
**로컬 실행 시** (`php artisan serve`):
- `.env``DB_HOST=127.0.0.1` 사용
- 호스트에서 MySQL 컨테이너 포트 3306으로 직접 접근
**Docker 컨테이너 실행 시**:
- docker-compose.yml 환경변수가 `.env` 값을 오버라이드
- `DB_HOST=mysql`로 컨테이너 간 통신
- `samnet` 네트워크를 통한 내부 DNS 해석
### 품질 검증
- ✅ 로컬 DB 연결: `php artisan tinker` 정상 작동
- ✅ Docker DB 연결: 컨테이너 내부 연결 확인
- ✅ 마이그레이션: `php artisan migrate:status` 성공
- ✅ Tinker 테스트: `DB::connection()->getPdo()` 성공
### 현재 상태
- ✅ API 서버 정상 작동
- ✅ 로컬/Docker DB 연결 안정화
- ✅ Swagger 문서 정상 접근 가능
- ⚠️ Parameter-based BOM 파일들 untracked 상태 (개발 진행 중)
### 참고사항
- API는 DB 스키마 관리 주체이므로 모든 마이그레이션은 API에서만 실행
- Admin/Front는 데이터 CRUD만 가능, 테이블/컬럼 작업 금지
---
**업데이트**: 2025-09-30 23:30 KST