amine_dubs
Fix: Add python-multipart and set HF cache directory
9f23223
# Use an official Python runtime as a parent image
FROM python:3.12-slim
# Set the working directory in the container
WORKDIR /app
# --- Set Hugging Face cache directory ---
# Create a cache directory within the working directory and set HF_HOME
# This ensures the container has write permissions for downloading models/tokenizers
RUN mkdir -p /app/.cache
ENV HF_HOME=/app/.cache
# Also set TRANSFORMERS_CACHE for good measure
ENV TRANSFORMERS_CACHE=/app/.cache
# Copy the requirements file into the container at /app
# Copy only requirements first to leverage Docker layer caching
COPY backend/requirements.txt .
# Install any needed packages specified in requirements.txt
# Add --no-cache-dir to reduce image size
RUN pip install --no-cache-dir -r requirements.txt
# Copy the rest of the application code into the container
# Copy backend, static, and templates directories
COPY backend/ ./backend
COPY static/ ./static
COPY templates/ ./templates
# Create the uploads directory (ensure it exists)
RUN mkdir -p /app/uploads
# Make port 8000 available to the world outside this container
EXPOSE 8000
# Define environment variable (optional, can be set in HF Spaces settings too)
# ENV MODEL_NAME="Helsinki-NLP/opus-mt-en-ar"
# Run main.py when the container launches
# Use the backend subdirectory path for the module
CMD ["uvicorn", "backend.main:app", "--host", "0.0.0.0", "--port", "8000"]