feat:CI/CD Gitea 워크플로우 등 누락 파일 반영
Some checks failed
ITAM Code Check / build-and-config-check (push) Failing after 11s
ITAM Docker Build Check / docker-build-check (push) Successful in 39s

This commit is contained in:
2026-06-18 13:39:35 +09:00
parent 9d19d8283e
commit fa8dec1780
33 changed files with 4696 additions and 2011 deletions

108
TEST_LOCAL.md Normal file
View File

@@ -0,0 +1,108 @@
# 로컬 Docker 테스트 가이드
## 준비 사항
- Docker & Docker Compose 설치 (WSL2 Ubuntu 권장)
- Node.js 20 (로컬 빌드 테스트 시)
## 테스트 단계
### 1. 파일 구조 확인
```bash
# docker-compose.test.yaml이 다음을 사용 확인
ls -la docker/nginx/default.conf
ls -la docker/frontend/default.conf
ls -la Dockerfile.backend.prod
ls -la Dockerfile.frontend.prod
ls -la package.json
ls -la src/
ls -la public/
ls -la index.html
```
### 2. Compose 파일 검증
```bash
docker compose -f docker-compose.test.yaml config
```
### 3. 이미지 빌드 테스트
```bash
# 개별 빌드 테스트
docker build -f Dockerfile.backend.prod -t itam-backend:test .
docker build -f Dockerfile.frontend.prod -t itam-frontend:test .
```
### 4. 컨테이너 시작
```bash
# WSL 터미널에서
cd /mnt/c/Users/user/Desktop/안건\ 파일/itam
# 또는 docker-compose.test.yaml을 사용하여 전체 스택 시작
docker compose -f docker-compose.test.yaml up --build
# 백그라운드에서 실행
docker compose -f docker-compose.test.yaml up -d --build
```
### 5. 컨테이너 상태 확인
```bash
docker compose -f docker-compose.test.yaml ps
docker logs itam-backend-test
docker logs itam-frontend-test
docker logs itam-nginx-test
```
### 6. 브라우저 테스트
```
http://localhost:8080/ # Frontend 접근
http://localhost:8080/api/ # Backend API 테스트
http://localhost:3000/health # 직접 backend health check
```
### 7. 정리
```bash
docker compose -f docker-compose.test.yaml down
```
## 예상되는 포트 매핑
- 8080: Nginx reverse proxy (frontend route to static + /api to backend)
- 3000: Backend Express API (내부, frontend와 nginx를 통해 접근)
- 80: Frontend Nginx (내부, 정적 파일 서빙)
## 테스트 체크리스트
- [ ] docker compose config 성공
- [ ] docker build 성공 (backend)
- [ ] docker build 성공 (frontend)
- [ ] 컨테이너 모두 실행 중 (ps 확인)
- [ ] http://localhost:8080 접근 가능 (frontend 페이지 로드)
- [ ] http://localhost:8080/api 응답 확인 (backend proxy 동작)
- [ ] backend health check 성공 (docker logs에서 /health 요청 확인)
## 문제 해결
### npm run build 실패
- Dockerfile.frontend.prod에서 tsc && vite build 실행
- package.json과 tsconfig.json 확인
### nginx 포트 이미 사용 중
```bash
docker ps
docker stop container_name
```
### DB 연결 실패
- 정상 동작 (NODE_ENV 때문에 /health는 200 반환)
- 실제 API 호출 시 DB 오류 예상
### 권한 문제
- logs/ 디렉토리 소유권 확인
- 필요 시 mkdir -p logs/nginx && chmod 777 logs