FROM continuumio/miniconda3:latest

# 设置工作目录
WORKDIR /app

# 安装系统依赖
RUN apt-get update && apt-get install -y \
    build-essential \
    git \
    wget \
    && rm -rf /var/lib/apt/lists/*

# 创建conda环境并安装pythonocc
RUN conda create -n prt_api python=3.9 -y && \
    echo "source activate prt_api" > ~/.bashrc

# 激活环境并安装依赖
SHELL ["/bin/bash", "--login", "-c"]
RUN conda activate prt_api && \
    conda install -c conda-forge pythonocc-core -y

# 复制requirements.txt
COPY requirements.txt .

# 安装Python依赖
RUN conda activate prt_api && \
    pip install --no-cache-dir -r requirements.txt

# 复制应用代码
COPY prt_feature_api.py .
COPY id2/ ./id2/

# 创建临时目录
RUN mkdir -p /tmp/prt_feature_api/jobs

# 暴露端口
EXPOSE 8000

# 设置环境变量
ENV PYTHONUNBUFFERED=1

# 启动命令
CMD ["conda", "run", "-n", "prt_api", "--no-capture-output", \
     "uvicorn", "prt_feature_api:app", \
     "--host", "0.0.0.0", \
     "--port", "8000"]
