RAG_HF / Dockerfile
hueonsu654-arch
.
a859909
# Dockerfile
FROM python:3.10-slim
# 1. μ‹œμŠ€ν…œ νŒ¨ν‚€μ§€ μ„€μΉ˜ 및 μ‹œκ°„λŒ€ μ„€μ • (Root κΆŒν•œ)
RUN apt-get update && \
apt-get install -y tzdata && \
ln -sf /usr/share/zoneinfo/Asia/Seoul /etc/localtime && \
echo "Asia/Seoul" > /etc/timezone && \
apt-get clean && \
rm -rf /var/lib/apt/lists/*
WORKDIR /app
# 2. μ˜μ‘΄μ„± 파일 볡사
COPY requirements.txt .
# 3. 'uv'λ₯Ό μ‚¬μš©ν•˜μ—¬ νŒ¨ν‚€μ§€ μ„€μΉ˜ (핡심 ν•΄κ²°μ±…)
# pip λŒ€μ‹  uvλ₯Ό μ‚¬μš©ν•˜λ©΄ resolution-too-deep μ—λŸ¬λ₯Ό ν•΄κ²°ν•  수 μžˆμŠ΅λ‹ˆλ‹€.
# --system μ˜΅μ…˜μœΌλ‘œ μ‹œμŠ€ν…œ 파이썬 ν™˜κ²½μ— 직접 μ„€μΉ˜ν•©λ‹ˆλ‹€ (도컀 λ‚΄λΆ€λŠ” κ²©λ¦¬λ˜μ–΄ μžˆμœΌλ―€λ‘œ μ•ˆμ „ν•¨).
RUN pip install uv && \
uv pip install --system --no-cache-dir --extra-index-url https://download.pytorch.org/whl/cpu -r requirements.txt
# 4. λ³΄μ•ˆμ„ μœ„ν•΄ μœ μ € 생성 및 μ „ν™˜
RUN useradd -m -u 1000 user
USER user
ENV PATH="/home/user/.local/bin:$PATH"
# 5. μ†ŒμŠ€ μ½”λ“œ 볡사 (μœ μ € κΆŒν•œμœΌλ‘œ)
COPY --chown=user . /app
# 6. μ„œλ²„ μ‹€ν–‰
CMD ["uvicorn", "app:app", "--host", "0.0.0.0", "--port", "7860"]