# 使用Python 3.9作为基础镜像
FROM python:3.9-slim

# 设置工作目录
WORKDIR /app

# 设置环境变量
ENV PYTHONUNBUFFERED=1 \
    PYTHONDONTWRITEBYTECODE=1 \
    PIP_NO_CACHE_DIR=1 \
    PIP_DISABLE_PIP_VERSION_CHECK=1

# 配置环境变量（可通过docker run -e 覆盖）
ENV API_BASE_URL=http://124.222.245.240:9999 \
    MONGODB_URI=mongodb://localhost:27017 \
    MONGODB_DB=job_data \
    MAX_PAGES=3 \
    PAGE_SIZE=15 \
    MIN_WAIT_TIME=10 \
    MAX_WAIT_TIME=30 \
    ERROR_WAIT_MIN=30 \
    ERROR_WAIT_MAX=60

# 复制requirements文件并安装Python依赖
COPY requirements.txt .
RUN pip install --no-cache-dir -r requirements.txt

# 复制项目文件
COPY boos_api.py ./
COPY city.json ./
COPY work.json ./

# 创建非root用户
RUN useradd -m -u 1000 crawler && chown -R crawler:crawler /app
USER crawler

# 启动命令
CMD ["python", "boos_api.py"]