| FROM python:3.12-slim | |
| ENV DEBIAN_FRONTEND=noninteractive | |
| RUN useradd -m -u 1000 user | |
| WORKDIR /app | |
| RUN apt-get update && \ | |
| apt-get install -y --no-install-recommends \ | |
| git \ | |
| stockfish \ | |
| make && \ | |
| rm -rf /var/lib/apt/lists/* | |
| COPY --chown=user ./requirements.txt requirements.txt | |
| RUN pip install --no-cache-dir --upgrade -r requirements.txt | |
| RUN git clone https://github.com/lichess-org/chess-openings.git /app/data/lichess_openings && \ | |
| cd /app/data/lichess_openings && \ | |
| make | |
| COPY --chown=user . /app | |
| WORKDIR /app | |
| EXPOSE 7860 | |
| ENV GRADIO_SERVER_NAME="0.0.0.0" | |
| CMD ["python", "app.py"] | |