Dockerfire 790 B

1234567891011121314151617181920212223242526
  1. FROM python:3.12-slim
  2. WORKDIR /app
  3. # 装基础依赖避免构建中断
  4. RUN apt-get update && apt-get install -y --no-install-recommends curl && \
  5. rm -rf /var/lib/apt/lists/*
  6. # 安装 Poetry(固定版本以避免变动)
  7. ENV POETRY_VERSION=1.8.3
  8. RUN pip install --no-cache-dir "poetry==${POETRY_VERSION}"
  9. # 先复制依赖声明,利用缓存
  10. COPY pyproject.toml poetry.lock /app/
  11. # 禁用虚拟环境,直接装到系统环境
  12. RUN poetry config virtualenvs.create false && \
  13. poetry install --no-root --no-interaction --no-ansi
  14. # 复制全部代码(满足“导入所有代码”)
  15. COPY . /app
  16. ENV PYTHONUNBUFFERED=1
  17. EXPOSE 33333
  18. # 按实际入口调整;示例为 FastAPI + uvicorn
  19. CMD ["uvicorn", "alien_store.api.router:app", "--host", "0.0.0.0", "--port", "8000"]