jam-tracks / Dockerfile
Mina Emadi
updated the MVP-Initial upload
a0fcd39
FROM python:3.11-slim
# Install system dependencies
RUN apt-get update && apt-get install -y \
rubberband-cli \
libsndfile1 \
ffmpeg \
curl \
&& curl -fsSL https://deb.nodesource.com/setup_20.x | bash - \
&& apt-get install -y nodejs \
&& apt-get clean \
&& rm -rf /var/lib/apt/lists/*
# Set working directory
WORKDIR /app
# Install Python dependencies first (cache layer)
COPY backend/requirements.txt backend/
RUN pip install --no-cache-dir -r backend/requirements.txt
# Install and build frontend
COPY frontend/package.json frontend/package-lock.json* frontend/
RUN cd frontend && npm install
COPY frontend/ frontend/
RUN cd frontend && npm run build
# Copy backend code
COPY backend/ backend/
# Expose port 7860 (Hugging Face Spaces requirement)
EXPOSE 7860
# Run the app
CMD ["python", "-m", "uvicorn", "backend.main:app", "--host", "0.0.0.0", "--port", "7860"]