FROM python:3.12-slim WORKDIR /app RUN apt-get update \ && apt-get install -y --no-install-recommends \ libfreetype6 \ libpng16-16 \ && rm -rf /var/lib/apt/lists/* COPY requirements.txt . RUN pip install --no-cache-dir -r requirements.txt COPY app ./app COPY watchlist.yaml . RUN mkdir -p /app/data ENV PYTHONUNBUFFERED=1 ENV MPLBACKEND=Agg ENV HOST=0.0.0.0 ENV PORT=8000 EXPOSE 8000 CMD ["sh", "-c", "uvicorn app.main:app --host ${HOST} --port ${PORT}"]