Skip to content

Latest commit

 

History

History
170 lines (118 loc) · 3.54 KB

File metadata and controls

170 lines (118 loc) · 3.54 KB

Deck

Deck 로컬 개발은 scripts/dev 기준으로 맞춰져 있습니다. 먼저 의존성을 설치하고, 그다음 스택을 올린 뒤 바로 로그인해서 확인하는 흐름이 가장 자연스럽습니다.

1. 최초 설치

brew install mise humanlog
echo 'eval "$(mise activate zsh)"' >> ~/.zshrc
source ~/.zshrc

mise install
pnpm --dir frontend install

2. 권장 실행 흐름

스택 실행

기본 서비스는 app이고, 기본 포트는 4011 / 8011 / 5011입니다.

./scripts/dev up -p 11

실행 순서:

  • DB
  • Backend
  • Frontend

접속 정보:

  • Frontend: https://localhost:4011
  • Backend API: http://localhost:8011
  • PostgreSQL: localhost:5011 (deck / deck)

기본 로그인:

  • admin / Deck@dm1n!

참고:

  • 최초 로그인 시 비밀번호 변경이 강제될 수 있습니다.
  • Ctrl+C로 종료하면 BE/FE만 내려가고 DB는 유지됩니다.

상태 확인

./scripts/dev status -p 11

종료

./scripts/dev down -p 11

DB 볼륨까지 초기화하려면:

./scripts/dev down -p 11 -v

3. 자주 쓰는 명령

./scripts/dev up -p 11                  # app 실행
./scripts/dev up -s meetpie -p 12       # meetpie를 4012/8012/5012로 실행
./scripts/dev up -s deskpie -p 13       # deskpie를 4013/8013/5013으로 실행
./scripts/dev restart -p 11             # 현재 포트 재기동
./scripts/dev restart -p 11 -v          # DB 볼륨 삭제 후 재기동
./scripts/dev status -p 11              # 상태 확인
./scripts/dev -h                        # 도움말

서비스:

서비스 설명
app 공통 / 백오피스
meetpie 명함 · 일정 · 관계
deskpie CRM

4. 개별 실행

scripts/dev 대신 서비스별로 따로 띄우고 싶다면 아래 순서로 실행합니다.

DB

docker compose up -d postgres

Backend

# SERVICE: app | meetpie | deskpie
./backend/gradlew -p backend :dist:app:bootRun 2>&1 | humanlog

Frontend

pnpm --dir frontend/app dev

5. 포트 변경

워크트리 병렬 실행이나 다중 스택 실행이 필요하면 suffix를 바꿔 쓰는 방식이 가장 간단합니다.

./scripts/dev up -p 12
./scripts/dev up -s meetpie -p 13

직접 실행할 때는 환경변수로도 포트를 바꿀 수 있습니다.

환경변수 기본값 대상
FE_PORT 4011 Frontend dev server
BE_PORT 8011 Backend
DB_PORT 5011 PostgreSQL
DB_PORT=5012 docker compose up -d postgres
BE_PORT=8012 DB_PORT=5012 ./backend/gradlew -p backend :dist:app:bootRun 2>&1 | humanlog
FE_PORT=4012 BE_PORT=8012 pnpm --dir frontend/app dev

6. DB 초기화

docker compose down -v
docker compose up -d postgres

또는 Flyway 기준으로 초기화하려면:

./backend/gradlew -p backend :dist:app:flywayClean :dist:app:flywayMigrate

7. Frontend 빌드

Backend가 정적 파일을 직접 서빙해야 할 때 사용합니다.

pnpm --dir frontend/app build

산출물:

  • backend/dist/app/src/main/resources/static/

8. Docker 이미지 빌드

docker build --build-arg SERVICE=meetpie -t deck-meetpie .

9. 트러블슈팅

extension "vector" is not available

pgvector 포함 이미지로 다시 띄워야 합니다.

docker compose down -v
docker compose up -d --build postgres

10. Onboarding

GitHub Pages에서 보기