본문으로 건너뛰기

환경 설정

quant-ai의 모든 런타임 설정은 환경 변수로 주입됩니다. 이 카테고리는 어떤 변수가 어떤 동작을 바꾸는지를 정리하고, 자주 쓰는 시나리오(LLM 프록시, feature flag 토글)에 따른 권장 값을 제공합니다.

설정 출처 우선순위

1. 컨테이너 environment: 블록 (compose YAML)
2. .env 파일 (env_file: - .env)
3. 코드 기본값 (server/services/feature_flags.py 등)

같은 변수가 여러 출처에 정의되면 위 순서대로 가장 높은 우선순위가 이깁니다. docker-compose.prod.yml${VAR:?Set VAR} 구문은 빈 값을 거부하므로, 프로덕션에서 누락된 시크릿은 컨테이너가 부팅조차 되지 않습니다.

카테고리 맵

페이지다루는 범위
환경변수 카탈로그.env.example의 모든 변수 — 그룹별 표
피처 플래그6개 FEATURE_* 토글의 단일 출처
LiteLLM 프록시OpenAI 호환 LLM 라우팅과 모델 셋업

변경 시 기본 절차

  1. 로컬 .env 또는 VM ~/quantai/.env 수정.

  2. 영향 받는 컨테이너만 재시작:

    # 단일 서비스
    docker compose restart api

    # 워커도 같이
    docker compose restart api analysis-worker position-reconciler
  3. 변경 사항이 시크릿이라면 시크릿 회전 에 정의된 영향 매트릭스를 따라 사용자 알림과 후속 검증을 수행.

  4. 변경 사항이 라이브 토글이라면 paper-to-live 체크리스트 통과를 확인.

보안 노트

시크릿은 .env 한 곳에만
  • .env.gitignore에 등재되어 있습니다 — 절대 커밋 금지.
  • 프로덕션 .envchmod 600 으로 소유자만 읽도록.
  • 시크릿을 출력하는 디버그 로그(echo $AUTH_SECRET_KEY, printenv | grep KEY) 는 사용 후 즉시 셸 히스토리에서 삭제.
  • 로테이션 영향은 시크릿 회전에서 단일 출처로 관리합니다.

관련 페이지