# Use an official Python runtime as a parent image FROM python:3.9-slim # Set the working directory in the container WORKDIR /code # Install system dependencies RUN apt-get update && apt-get install -y \ ffmpeg \ libsndfile1 \ build-essential \ && rm -rf /var/lib/apt/lists/* # Copy requirements.txt separately to leverage Docker layer caching COPY ./requirements.txt /code/requirements.txt # Install Python dependencies RUN pip install --no-cache-dir --upgrade -r requirements.txt # Set the HF_HOME environment variable ENV HF_HOME /code/.cache/huggingface # Create cache directory with appropriate permissions RUN mkdir -p $HF_HOME && chmod -R 777 $HF_HOME # Copy the model files into the image COPY ./DistillMDPI1 /code/DistillMDPI1 COPY ./Neptune /code/Neptune # Copy the rest of the application files COPY . . # Grant write permissions to the directory where your application saves files RUN mkdir -p /code/static/uploads && chmod -R 777 /code/static/uploads # Expose the port the app runs on EXPOSE 7860 # Command to run your application CMD ["gunicorn", "--timeout", "300", "--workers", "2", "--threads", "4", "-b", "0.0.0.0:7860", "app:app"]