DM Log

[AI 프로젝트 #0] 초기 세팅 #3: Turborepo 실행 환경 구성 방법 본문

PJT/AI PJT

[AI 프로젝트 #0] 초기 세팅 #3: Turborepo 실행 환경 구성 방법

Dev. Dong 2025. 10. 13. 21:59

서론

 

  • turborepo의 실행 환경 구성

Turborepo  실행

  • 특정 앱 실행
npx turbo run dev --filter=pdf

👉 apps/pdf의 dev 스크립트만 실행

  • 여러 앱 동시 실행
npx turbo run dev --filter=pdf --filter=office

👉  apps/pdf와 apps/office 앱을 동시에 실행

  • 모든 앱 실행
npx turbo run dev

👉  workspaces에 포함된 모든 앱 실행


turbo.json  확장

{
  "tasks": {
    "dev": {
      "dependsOn": ["^dev"],
      "cache": false
    },
    "build": {
      "dependsOn": ["^build"],
      "outputs": ["dist/**"]
    },
    "lint": {
      "outputs": []
    },
    "test": {
      "outputs": []
    }
  }
}

 

  • dev: 개발 서버 실행 (캐시 X)
  • build: 빌드 시 상위 패키지 빌드 결과를 의존
  • lint, test: 병렬 실행 가능

 


실행 환경 (환경 변수 관리)

앱별 .env 파일

  • apps/pdf/.env
VITE_API_URL=http://localhost:5000
  • apps/office/.env
     
 
VITE_API_URL=http://localhost:5001

공용 환경 변수

  • frontend/.env
TURBO_TEAM=my-team
TURBO_API=...

실행 속도 최적화

Turborepo는 빌드 캐시를 적극 활용

  • 로컬 캐시: 같은 명령 반복 시 속도 개선
  • 원격 캐시: 팀 단위 협업 시 캐시 공유

설정 예시 (.turbo/config.json):

{
  "team": "ai-projects",
  "remoteCache": "s3://my-bucket/turbo-cache"
}