# RestockIQ serving image — inference/lookup only, nothing trains at startup. # Prophet is a pipeline-only dependency (baselines run offline), so the image # installs just the serving requirements to stay small. FROM python:3.13-slim WORKDIR /code # lightgbm's compiled lib needs libgomp at runtime RUN apt-get update && apt-get install -y --no-install-recommends libgomp1 \ && rm -rf /var/lib/apt/lists/* COPY requirements-serve.txt . RUN pip install --no-cache-dir -r requirements-serve.txt COPY app/ app/ COPY models/ models/ COPY data/forecasts.parquet data/ COPY data/history_tail.parquet data/ COPY data/backtest_summary.json data/ COPY data/backtest_per_sku.parquet data/ EXPOSE 7860 CMD ["uvicorn", "app.main:app", "--host", "0.0.0.0", "--port", "7860"]