FROM python:3.11-slim WORKDIR /app COPY requirements.txt . RUN pip install --no-cache-dir -r requirements.txt COPY app.py . COPY static/ static/ # Persistent data dir (games.json lives here via volume) RUN mkdir -p /app/data COPY games.json /app/data/games.json # Coverart/ is mounted at runtime via docker-compose volume RUN mkdir -p /app/coverart EXPOSE 5000 CMD ["gunicorn", "--bind", "0.0.0.0:5000", "--workers", "2", "--timeout", "120", "app:app"]