错误:无法为psutil构建轮子,这是安装基于pyproject.toml的项目所必需的



我最近开始使用Docker,但我试图为Flask应用程序构建Docker映像,我遇到了以下错误:

未能构建cffi kiwisolver Pillow psutil错误:无法为psutil构建轮子,这是安装基于pyproject.toml的项目所必需的执行器运行[/bin/sh-cpip-install-r requirements.txt]失败:退出代码:1

它是由线路引起的

RUN pip install-r requirements.txt

据我所知,在我的Dockerfile。

我试着寻找解决方案,到目前为止我发现:-检查docker文件(Dockerfile(的拼写,因为它区分大小写-export DOCKER_BUILDKIT=0导出COMPOSE_DOCKER_CLI_BUILD=0在终端中,但导出未被识别为命令-更新的pip-使用pipinstall安装软件包

我试了试我在网上能找到的所有东西,遗憾的是什么都没用。

我还必须提到我正在开发windows

您应该使用apt安装gcc和python3-dev(如果您在python或ubuntu的基本映像上(。

试试类似的东西:

FROM python:3.11.3-slim
# Install all OS dependencies for fully functional requirements.txt install
RUN apt-get update --yes && 
apt-get upgrade --yes && 
apt-get install --yes --no-install-recommends 
# - apt-get upgrade is run to patch known vulnerabilities in apt-get packages as
#   the python base image may be rebuilt too seldom sometimes (less than once a month)
# required for psutil python package to install
python3-dev 
gcc && 
apt-get clean && rm -rf /var/lib/apt/lists/*
COPY requirements.txt /tmp/requirements.txt
RUN pip install --no-cache-dir -r /tmp/requirements.txt

我添加了额外的命令,我认为你应该考虑:

  • 更新apt缓存和升级apt包
  • 为较小的映像安装带有--no-install-recommends的apt包
  • 适用于较小图像后的清理
  • pip install期间不缓存pip安装

p.s.在psutil的github上发现问题#2192后,我试图安装gcc和python3dev,通过鸭子去搜索我在docker构建过程中看到的错误。

相关内容