feat(infra): 이식 가능한 Docker 배포 구성

- docker-compose.yml: web/api/db(pgvector)/rag/proxy 한 방 기동
- 엔진 어댑터 분리: ENGINE_URL/ENGINE_MODE로 로컬 claude -p ↔ API 전환(코드 무수정 이전)
- Caddy: 자동 TLS + SSE flush/WSS 무버퍼(실시간 음성)
- DEPLOYMENT.md: 이식/엔진분리/스케일업/외부노출 가이드
- 페이지 레이아웃 시안 6종(login/learner-home/session-review/professor/admin/settings)
This commit is contained in:
Yun Chan 2026-06-25 21:24:19 +09:00
parent 709baadd01
commit 204726f707
11 changed files with 272 additions and 0 deletions

11
apps/api/Dockerfile.rag Normal file
View file

@ -0,0 +1,11 @@
# Vignette RAG 사이드카 — BGE-M3 임베딩 + BGE-reranker-v2-m3
# CPU로도 동작(20명 규모 충분), GPU 호스트면 nvidia runtime 으로 가속.
FROM python:3.11-slim
ENV PYTHONUNBUFFERED=1 HF_HOME=/models
WORKDIR /app
COPY requirements-rag.txt ./
RUN pip install --no-cache-dir -r requirements-rag.txt
COPY rag/ ./rag/
EXPOSE 8080
# 모델은 첫 기동 시 /models 볼륨에 캐시 → 이식 시 볼륨만 옮기면 재다운로드 불필요
CMD ["uvicorn", "rag.server:app", "--host", "0.0.0.0", "--port", "8080"]