sonsdf's picture
회계기준 Assistant 앱 배포 (Docker/Streamlit) — 벡터DB는 HF private 데이터셋에서 로드
46d572c verified
Raw
History Blame Contribute Delete
1.1 kB
# HF Spaces (Docker SDK) — Streamlit 구동.
# 벡터DB(data/chroma)는 이미지에 포함하지 않고, 앱 시작 시 HF private 데이터셋에서
# 토큰으로 내려받는다(rag/common.ensure_corpus). BGE-M3 임베더·리랭커는 최초 기동 시
# HF Hub에서 HF_HOME 캐시로 다운로드된다.
FROM python:3.11-slim
RUN apt-get update && apt-get install -y --no-install-recommends \
build-essential git curl && \
rm -rf /var/lib/apt/lists/*
# 비루트 사용자 (HF Spaces 권장)
RUN useradd -m -u 1000 user
USER user
ENV HOME=/home/user \
PATH=/home/user/.local/bin:$PATH \
HF_HOME=/home/user/.cache/huggingface \
STREAMLIT_SERVER_PORT=7860 \
STREAMLIT_SERVER_ADDRESS=0.0.0.0 \
STREAMLIT_SERVER_HEADLESS=true \
STREAMLIT_BROWSER_GATHER_USAGE_STATS=false
WORKDIR /home/user/app
COPY --chown=user requirements.txt .
RUN pip install --no-cache-dir --upgrade pip && \
pip install --no-cache-dir -r requirements.txt
COPY --chown=user . .
EXPOSE 7860
CMD ["streamlit", "run", "rag/app.py", "--server.port=7860", "--server.address=0.0.0.0"]