| # Use Python 3.11 | |
| FROM python:3.11 | |
| # Set working directory | |
| WORKDIR /app | |
| # Install system dependencies | |
| RUN apt-get update && apt-get install -y \ | |
| git \ | |
| libsndfile1 \ | |
| fluid-soundfont-gm \ | |
| && rm -rf /var/lib/apt/lists/* | |
| # Upgrade pip before installing dependencies | |
| RUN pip install --upgrade pip | |
| # Copy and install Python dependencies first (before cloning anticipation) | |
| COPY requirements.txt . | |
| RUN pip install --no-cache-dir -r requirements.txt | |
| # Clone and install Anticipation Music Transformer (AMT) | |
| RUN git clone https://github.com/jthickstun/anticipation.git | |
| # Install AMT dependencies separately to avoid conflicts | |
| RUN pip install -r anticipation/requirements.txt && \ | |
| pip install ./anticipation | |
| # Debugging: Check installed packages | |
| RUN pip list | |
| # Copy the application files into the container | |
| COPY . . | |
| # Run the Gradio app | |
| CMD ["python", "app.py"] | |