# 多阶段构建：前端静态 → 后端镜像
FROM python:3.11-alpine
WORKDIR /app
ENV PYTHONDONTWRITEBYTECODE=1 \
    PYTHONUNBUFFERED=1 \
    TZ=Asia/Shanghai \
    PIP_INDEX_URL=https://mirrors.cloud.tencent.com/pypi/simple \
    PIP_DISABLE_PIP_VERSION_CHECK=1 \
    AUTO_IMPORT_ON_START=1
RUN sed -i -e 's/dl-cdn.alpinelinux.org/mirrors.cloud.tencent.com/g' /etc/apk/repositories && \
    apk update && apk add --no-cache tzdata && \
    cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime && echo "Asia/Shanghai" > /etc/timezone
COPY backend/requirements.txt .
RUN python -m pip install --no-cache-dir --upgrade pip -i $PIP_INDEX_URL && \
    pip install --no-cache-dir -r requirements.txt -i $PIP_INDEX_URL
COPY backend/ ./backend/
COPY frontend/ ./frontend/
COPY config.json ./config.json
RUN mkdir -p /app/data
VOLUME ["/app/data"]
EXPOSE 57778
CMD ["python", "backend/app.py"]
