# 영웅문 S# AI 메뉴 검색 — FastAPI 검색 에이전트 이미지 (docker-compose / 사내 서버용) # Qdrant는 별도 컨테이너(server 모드)에 연결한다. HF Spaces 배포는 루트 Dockerfile 참고. FROM python:3.13-slim WORKDIR /app # 빌드 도구 (sentence-transformers/kiwipiepy 등 일부 소스 빌드 대비) RUN apt-get update && apt-get install -y --no-install-recommends \ build-essential curl \ && rm -rf /var/lib/apt/lists/* # torch는 CPU 전용 휠로 설치 (기본 설치 시 거대한 CUDA 빌드를 받는 것 방지) RUN pip install --no-cache-dir torch --index-url https://download.pytorch.org/whl/cpu # 의존성 (소스보다 먼저 복사 → 레이어 캐시 활용) COPY requirements.txt . RUN pip install --no-cache-dir -r requirements.txt # 애플리케이션 코드 COPY . . # bge-m3 모델 캐시 위치 (compose에서 named volume으로 마운트 → 재빌드 시 재다운로드 방지) ENV HF_HOME=/app/.hf_cache \ TRANSFORMERS_OFFLINE=0 \ TOKENIZERS_PARALLELISM=false \ PYTHONUNBUFFERED=1 ENTRYPOINT ["bash", "docker-entrypoint.sh"] CMD ["uvicorn", "api.main:app", "--host", "0.0.0.0", "--port", "8000"]