Spaces:
Runtime error
Runtime error
# ============================================================================== | |
# Dockerfile for AI Solver Backend - V1.5 (Final Single-Worker Version) | |
# ============================================================================== | |
# 步骤1: 选择一个官方的、带有Python的基础镜像 | |
FROM python:3.11-slim | |
# 步骤2: 安装系统级依赖 | |
RUN apt-get update && apt-get install -y --no-install-recommends \ | |
libgl1 \ | |
libglib2.0-0 \ | |
&& rm -rf /var/lib/apt/lists/* | |
# 步骤3: 设置安全环境变量 | |
ENV TOKENIZERS_PARALLELISM=false | |
ENV OMP_NUM_THREADS=1 | |
ENV MKL_NUM_THREADS=1 | |
# 步骤4: 创建一个有“家”的普通用户 | |
RUN groupadd -r app && useradd --no-log-init -r -g app -m -d /app app | |
WORKDIR /app | |
USER app | |
# 步骤5: 拷贝和安装依赖 | |
COPY ./requirements.txt /app/requirements.txt | |
RUN pip install --no-cache-dir --upgrade -r /app/requirements.txt | |
# 步骤6: 拷贝代码 | |
USER root | |
COPY . /app/ | |
RUN chown -R app:app /app | |
USER app | |
# 步骤7: 暴露端口 | |
EXPOSE 7860 | |
# --- 【核心修复】: 使用Gunicorn作为进程管理器来启动Uvicorn工人 --- | |
CMD ["gunicorn", "-w", "1", "-k", "uvicorn.workers.UvicornWorker", "-b", "0.0.0.0:7860", "main:app"] |