Spaces:
Sleeping
Sleeping
| # Use an official Python runtime as a parent image | |
| FROM python:3.9-slim | |
| # Set the working directory in the container | |
| WORKDIR /code | |
| # Copy the requirements file into the container | |
| COPY ./requirements.txt /code/requirements.txt | |
| # Install all the Python libraries your bot needs | |
| RUN pip install --no-cache-dir --upgrade -r /code/requirements.txt | |
| # Create necessary directories with proper permissions | |
| RUN mkdir -p /code/logs /code/huggingface_cache /code/db \ | |
| && chmod -R 755 /code/logs /code/huggingface_cache /code/db | |
| # Use HF_HOME instead of TRANSFORMERS_CACHE (future-proof) | |
| ENV HF_HOME=/code/huggingface_cache | |
| # Copy all your project files into the container | |
| COPY . /code/ | |
| # Switch to a non-root user for security (optional but recommended) | |
| RUN useradd -m -r -u 1000 appuser \ | |
| && chown -R appuser:appuser /code | |
| USER appuser | |
| # Expose the port Hugging Face Spaces expects | |
| EXPOSE 7860 | |
| # Run the FastAPI app with Uvicorn | |
| CMD ["uvicorn", "api:app", "--host", "0.0.0.0", "--port", "7860"] | |