FROM python:3.11-slim

ENV PYTHONDONTWRITEBYTECODE=1
ENV PYTHONUNBUFFERED=1

WORKDIR /app

COPY environment.yml /app/environment.yml
RUN pip install --no-cache-dir \
    fastapi==0.115.6 \
    "uvicorn[standard]==0.34.0" \
    sqlalchemy==2.0.36 \
    pymysql==1.1.1 \
    pydantic-settings==2.7.1 \
    python-dotenv==1.0.1 \
    httpx==0.28.1 \
    apscheduler==3.10.4 \
    redis==5.2.1 \
    celery==5.4.0 \
    cryptography==44.0.0 \
    pandas==2.2.3

COPY app /app/app

CMD ["uvicorn", "app.main:app", "--host", "0.0.0.0", "--port", "8010"]
