Local PC 개발 및 테스트 - git 배포 - gitea webhook 단계별 설정

This commit is contained in:
2026-01-25 19:00:22 +09:00
parent 879bb2f25d
commit 005c0261c2
4 changed files with 79 additions and 45 deletions

View File

@@ -11,10 +11,10 @@ Frontend, Backend, Travel Proxy, Auto Deployer를 Docker Compose로 통합하여
| --------------- | ------------------------------------- |
| **NAS** | Synology NAS |
| **OS** | Synology DSM |
| **CPU** | (예: Intel / AMD / ARM 필요 시 기입) |
| **메모리** | (예: 8GB / 16GB) |
| **CPU** | Intel Celeron J4025 (2 Core, 2.0GHz) |
| **메모리** | 18 GB |
| **Docker** | Synology Container Manager |
| **Reverse Proxy** | Nginx (컨테이너) |
| **Reverse Proxy** | Nginx (컨테이너) |
| **Git Server** | Gitea (self-hosted) |
---
@@ -80,11 +80,37 @@ Nginx (frontend container)
- 장기 캐시(`assets/`)와 `index.html` 캐시 무효화 전략을 사용합니다.
- Backend / Travel API는 Nginx에서 Reverse Proxy로 연결됩니다.
- **배포 방식**:
1. **로컬 개발**:
- `.env` 파일 설정 후 `docker compose up`으로 전체 스택 실행 가능
2. **운영 배포**:
- Code를 Git에 Push
- Webhook이 트리거되어 NAS가 자동 Pull & Deploy
- (Frontend 빌드 산출물은 별도 업로드 혹은 CI 연동 필요)
---
## 🛠️ 개발 환경 설정 (Local Development)
이 프로젝트는 **Windows/Mac 로컬 환경**과 **Synology NAS 운영 환경**을 모두 지원하도록 구성되었습니다.
### 1. 환경 변수 설정
`docker-compose.yml`은 환경 변수에 의존합니다.
1. `.env.example` 파일을 복사하여 `.env` 파일을 생성하세요.
```bash
# 로컬 PC에서 실행
npm run build
npm run deploy:nas
cp .env.example .env
```
2. `.env` 파일의 경로(`RUNTIME_PATH`, `PHOTO_PATH` 등)를 로컬 환경에 맞게 수정하세요.
- 기본값은 현재 디렉토리(`.`) 기준으로 설정되어 있어 바로 실행 가능합니다.
### 2. 로컬 실행
```bash
docker compose up -d
```
- Frontend: http://localhost:8080
- Backend API: http://localhost:18000
- Travel API: http://localhost:19000
---
---