전제 조건
설치하기 가이드를 완료하고 프로젝트가 생성되어 있어야 합니다.개발 환경 실행
Sonamu 개발 환경은 다음 세 가지 서버로 구성됩니다:- PostgreSQL - 데이터베이스
- API 서버 - 백엔드 REST API (Sonamu UI 포함)
- Web 서버 - 프론트엔드 애플리케이션
1
데이터베이스 시작
프로젝트의 이 명령어는 Docker Compose를 사용하여 PostgreSQL 데이터베이스를 백그라운드에서 실행합니다.
api 디렉토리로 이동하여 PostgreSQL 컨테이너를 시작합니다:📸 필요: docker:up 실행 후 성공 메시지 및 컨테이너 시작 로그
📸 필요: docker ps 실행 결과 (PostgreSQL 컨테이너가 Up 상태인 화면)
2
API 서버 실행
같은 서버가 성공적으로 시작되면 다음과 같은 메시지가 표시됩니다:이 명령어 하나로 다음이 모두 실행됩니다:
api 디렉토리에서 개발 서버를 시작합니다:📸 필요: pnpm dev 실행 후 서버 시작 로그 (🌲 Server listening on http://localhost:1028 메시지 포함)
- Web 앱: http://localhost:1028
- API 엔드포인트: http://localhost:1028/api
- Sonamu UI: http://localhost:1028/sonamu-ui
로컬 개발 환경에서는 API 서버가 Web 앱까지 통합하여 제공합니다. Web 디렉토리의 Vite Dev Server를 API 서버에 middleware로 연결하여 하나의 포트로 모든 것을 실행할 수 있습니다.
3
Web 서버 실행 (선택사항)
Web 개발에 집중하거나 Vite의 전체 기능을 활용하고 싶다면, 새 터미널 창을 열고 Vite 개발 서버가 시작되면 다음과 같은 메시지가 표시됩니다:Web 서버를 별도로 실행하면 http://localhost:3028 로 접속하여 프론트엔드를 확인할 수 있습니다. Web 서버는
web 디렉토리에서 별도로 개발 서버를 시작할 수 있습니다:📸 필요: web 디렉토리에서 pnpm dev 실행 후 Vite 시작 로그 (Local: http://localhost:3028 메시지 포함)
/api/* 경로 요청을 자동으로 API 서버(localhost:1028)로 프록시합니다.두 가지 개발 방식
- 통합 모드 (권장): API 서버만 실행 →
localhost:1028로 모든 것에 접근 - 분리 모드: API + Web 별도 실행 → API는
localhost:1028, Web은localhost:3028
접속 확인
통합 모드 (API 서버만 실행한 경우)
브라우저에서 다음 URL로 접속할 수 있습니다:| 서비스 | URL | 설명 |
|---|---|---|
| Web 앱 | http://localhost:1028 | 프론트엔드 애플리케이션 |
| API 서버 | http://localhost:1028/api | REST API 엔드포인트 |
| Sonamu UI | http://localhost:1028/sonamu-ui | 엔티티 관리 인터페이스 |
📸 필요: 브라우저에서 localhost:1028 접속한 화면 (기본 Web 앱 홈페이지)
📸 필요: 브라우저에서 localhost:1028/api 접속한 화면 (404 또는 API 응답)
📸 필요: 브라우저에서 localhost:1028/sonamu-ui 접속한 화면 (Sonamu UI 대시보드)
분리 모드 (API + Web 서버 모두 실행한 경우)
| 서비스 | URL | 설명 |
|---|---|---|
| Web 앱 | http://localhost:3028 | 프론트엔드 애플리케이션 |
| API 서버 | http://localhost:1028/api | REST API 엔드포인트 |
| Sonamu UI | http://localhost:1028/sonamu-ui | 엔티티 관리 인터페이스 |
Web 앱에 접속하여 Sonamu 애플리케이션이 정상적으로 실행되는지 확인하세요.
Sonamu UI 기능
브라우저에서 http://localhost:1028/sonamu-ui 로 접속하면 다음 작업을 수행할 수 있습니다:- 엔티티 생성 및 편집
- 데이터베이스 마이그레이션 관리
- API 엔드포인트 확인
- 데이터베이스 스키마 시각화
📸 필요: Sonamu UI 메인 화면 (Entity 탭, Migration 탭 등이 보이는 전체 UI)
서버 중지
개발을 마치고 서버를 중지하려면:-
API 서버 (그리고 Web 서버가 실행 중이라면): 각 터미널에서
Ctrl + C키를 눌러 중지합니다. -
데이터베이스:
api디렉토리에서 다음 명령어를 실행합니다:
