FROM python:3.12-slim

ENV DEBIAN_FRONTEND=noninteractive \
    TZ=Asia/Shanghai

# 安装系统依赖包并创建虚拟环境
RUN chmod 777 /tmp \
    && python -m venv /venv

ENV PATH="/venv/bin:$PATH"

# 先复制 requirements 文件安装依赖（利用缓存）
COPY requirements/ /tmp/requirements/
RUN /venv/bin/pip config set global.index-url https://mirrors.aliyun.com/pypi/simple \
    && /venv/bin/pip config set install.trusted-host mirrors.aliyun.com \
    && /venv/bin/pip --default-timeout=1800 install -r /tmp/requirements/requirements.txt \
    && rm -rf /root/.cache

# 设置工作目录并复制项目文件
WORKDIR /app
COPY . /app

EXPOSE 8000
# 确保脚本可执行
RUN chmod 777 run.sh


# 带参数的启动方式
CMD ["/venv/bin/python", "run_server.py"]