Spaces:
Runtime error
Runtime error
FROM python:3.10-slim | |
WORKDIR /app | |
# Install system dependencies (excluding git) | |
# Clean up apt lists to reduce image size | |
RUN apt-get update && apt-get install -y --no-install-recommends \ | |
# Add any other core system dependencies here if needed, but not git | |
# e.g., libpq-dev for psycopg2, if you add a PostgreSQL dependency later | |
# Example: libpq-dev | |
&& rm -rf /var/lib/apt/lists/* | |
COPY requirements.txt . | |
RUN pip install --no-cache-dir -r requirements.txt | |
# --- Pre-download models during Docker build --- | |
# Ensure spacy and nltk are installed via requirements.txt before these steps | |
RUN python -m spacy download en_core_web_sm | |
RUN python -m nltk.downloader wordnet | |
# --- Configure cache directories using Docker ENV (these take precedence) --- | |
ENV HF_HOME=/cache | |
ENV TRANSFORMERS_CACHE=/cache | |
ENV NLTK_DATA=/nltk_data | |
ENV SPACY_DATA=/spacy_data | |
# Create directories and set appropriate permissions | |
RUN mkdir -p /cache && chmod -R 777 /cache | |
RUN mkdir -p /nltk_data && chmod -R 777 /nltk_data | |
RUN mkdir -p /spacy_data && chmod -R 777 /spacy_data | |
# It's good to also create the /root/.cache for general system caching in Docker | |
RUN mkdir -p /root/.cache && chmod -R 777 /root/.cache | |
COPY app ./app | |
# Expose the port your FastAPI application will run on | |
EXPOSE 7860 | |
# Command to run your FastAPI application | |
CMD ["uvicorn", "app.main:app", "--host", "0.0.0.0", "--port", "7860", "--workers", "4"] |