2026-06-14 13:57:32 +00:00
|
|
|
FROM python:3.11-slim
|
|
|
|
|
|
|
|
|
|
WORKDIR /app
|
|
|
|
|
|
|
|
|
|
# Install system dependencies
|
|
|
|
|
RUN apt-get update && apt-get install -y --no-install-recommends \
|
|
|
|
|
curl \
|
|
|
|
|
&& rm -rf /var/lib/apt/lists/*
|
|
|
|
|
|
|
|
|
|
# Install Python dependencies
|
|
|
|
|
COPY requirements.txt .
|
|
|
|
|
RUN pip install --no-cache-dir -r requirements.txt
|
|
|
|
|
|
2026-06-14 20:29:27 +00:00
|
|
|
# Copy bbpPairings binary (FIDE Swiss engine)
|
|
|
|
|
COPY bbpPairings.exe /usr/local/bin/bbpPairings.exe
|
|
|
|
|
RUN chmod +x /usr/local/bin/bbpPairings.exe
|
|
|
|
|
|
|
|
|
|
# Set path for bbpPairings wrapper
|
|
|
|
|
ENV BBP_PATH=/usr/local/bin/bbpPairings.exe
|
|
|
|
|
|
2026-06-14 13:57:32 +00:00
|
|
|
# Copy application code
|
|
|
|
|
COPY swiss_calc/ /app/swiss_calc/
|
|
|
|
|
|
|
|
|
|
# Create entry point
|
|
|
|
|
RUN python3 -c "from swiss_calc import parser; print('✅ Module loaded')"
|
|
|
|
|
|
|
|
|
|
ENTRYPOINT ["python3", "-m", "swiss_calc"]
|
|
|
|
|
CMD ["--help"]
|