dockerfile 858 B

12345678910111213141516171819202122232425262728293031323334
  1. # 基础镜像:使用Python 3.12-alpine
  2. FROM python:3.12-alpine
  3. # 设置工作目录
  4. WORKDIR /app
  5. COPY requirements.txt .
  6. # 设置环境变量
  7. ENV PYTHONUNBUFFERED=1 \
  8. PYTHONDONTWRITEBYTECODE=1 \
  9. PIP_NO_CACHE_DIR=off \
  10. PIP_DISABLE_PIP_VERSION_CHECK=on
  11. # 安装编译依赖并编译安装所有需要的包
  12. RUN apk add --no-cache \
  13. gcc \
  14. musl-dev \
  15. linux-headers \
  16. && pip install -i https://mirrors.aliyun.com/pypi/simple/ psutil==5.9.5 \
  17. # 注意:在这里安装所有需要编译的依赖
  18. && pip install -i https://mirrors.aliyun.com/pypi/simple/ -r requirements.txt \
  19. # 最后清理编译工具
  20. && apk del gcc musl-dev linux-headers
  21. # 复制服务代码
  22. COPY parse_service.py .
  23. # 暴露服务端口
  24. EXPOSE 8000
  25. # 启动命令
  26. CMD ["python", "parse_service.py", "--host", "0.0.0.0", "--port", "8000"]