Spaces:
Sleeping
Sleeping
| # Hugging Face Spaces์ฉ Lily LLM API Server Dockerfile | |
| FROM python:3.11-slim | |
| # Hugging Face Spaces ํ๊ฒฝ ๋ณ์ | |
| ENV GRADIO_SERVER_NAME="0.0.0.0" | |
| ENV GRADIO_SERVER_PORT=7860 | |
| ENV PYTHONPATH=/app | |
| ENV PYTHONUNBUFFERED=1 | |
| ENV TOKENIZERS_PARALLELISM=false | |
| # ์์ ๋๋ ํ ๋ฆฌ ์ค์ | |
| WORKDIR /app | |
| # ์์คํ ์์กด์ฑ ์ค์น | |
| RUN apt-get update && apt-get install -y \ | |
| build-essential \ | |
| curl \ | |
| git \ | |
| wget \ | |
| ffmpeg \ | |
| libglib2.0-0 \ | |
| libsm6 \ | |
| libxext6 \ | |
| libfontconfig1 \ | |
| libxrender1 \ | |
| libgl1 \ | |
| && rm -rf /var/lib/apt/lists/* | |
| # Python ์์กด์ฑ ์ค์น (์บ์ฑ ์ต์ ํ) | |
| COPY requirements.txt requirements.txt | |
| RUN pip install --no-cache-dir --upgrade pip | |
| RUN pip install --no-cache-dir -r requirements.txt | |
| # NLTK ๋ฐ์ดํฐ ๋ค์ด๋ก๋ | |
| RUN python -c "import nltk; nltk.download('punkt'); nltk.download('punkt_tab'); nltk.download('averaged_perceptron_tagger'); nltk.download('maxent_ne_chunker'); nltk.download('words'); nltk.download('stopwords')" | |
| # ์ ํ๋ฆฌ์ผ์ด์ ์ฝ๋ ๋ณต์ฌ | |
| COPY . . | |
| # ํ์ํ ๋๋ ํ ๋ฆฌ ์์ฑ | |
| RUN mkdir -p /app/data /app/logs /app/models /app/uploads /app/vector_stores /app/ocr_models /app/temp /app/cache/transformers /app/cache/huggingface /app/cache/easyocr /app/cache/ocr_models | |
| # ๊ถํ ์ค์ - ๋ชจ๋ ์บ์ ๋ฐ ๋ฐ์ดํฐ ๋๋ ํ ๋ฆฌ์ ์ฐ๊ธฐ ๊ถํ ๋ถ์ฌ | |
| RUN chmod +x /app/*.py | |
| RUN chmod -R 777 /app/cache | |
| RUN chmod -R 777 /app/data | |
| RUN chmod -R 777 /app/logs | |
| RUN chmod -R 777 /app/uploads | |
| RUN chmod -R 777 /app/vector_stores | |
| RUN chmod -R 777 /app/ocr_models | |
| RUN chmod -R 777 /app/temp | |
| RUN chmod -R 777 /app/cache/easyocr | |
| RUN chmod -R 777 /app/cache/ocr_models | |
| RUN chmod -R 777 /app/cache/transformers | |
| RUN chmod -R 777 /app/cache/huggingface | |
| # EasyOCR ๋ฐ ๊ธฐํ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ์ํ ํ๊ฒฝ ๋ณ์ ์ค์ | |
| ENV EASYOCR_MODULE_PATH=/app/cache/easyocr | |
| ENV OCR_MODELS_PATH=/app/cache/ocr_models | |
| # Hugging Face ์บ์ ๋๋ ํ ๋ฆฌ ํ๊ฒฝ ๋ณ์ ์ค์ | |
| ENV TRANSFORMERS_CACHE=/app/cache/transformers | |
| ENV HF_HOME=/app/cache/huggingface | |
| ENV HF_HUB_CACHE=/app/cache/huggingface | |
| # ํ๊ฒฝ ๊ฐ์ง ์ค์ | |
| ENV IS_LOCAL=false | |
| ENV ENVIRONMENT=production | |
| ENV DOCKER_ENV=server | |
| # Hugging Face Spaces์ฉ ์ฑ ์์์ ์์ฑ | |
| COPY app_huggingface.py /app/app_huggingface.py | |
| # ํฌํธ ๋ ธ์ถ (Hugging Face Spaces๋ 7860 ํฌํธ ์ฌ์ฉ) | |
| EXPOSE 7860 | |
| # ํฌ์ค์ฒดํฌ | |
| HEALTHCHECK --interval=30s --timeout=30s --start-period=60s --retries=3 \ | |
| CMD curl -f http://localhost:7860/health || exit 1 | |
| # ์ ํ๋ฆฌ์ผ์ด์ ์คํ | |
| CMD ["python", "app_huggingface.py"] |