如何解决Dockerfile:pip install 失败并显示 requirements.txt但使用单个包成功
我正在尝试在 docker 容器中安装一些包,从 requirements.txt 文件安装时出现问题。这一行:
RUN python3.8 -m pip install -r requirements.txt
因错误而失败:
...
Collecting torch
Downloading torch-1.8.0-cp38-cp38-manylinux1_x86_64.whl (735.5 MB)
ERROR: THESE PACKAGES DO NOT MATCH THE HASHES FROM THE REQUIREMENTS FILE. If you have updated the package versions,please update the hashes. Otherwise,examine the package contents carefully; someone may have tampered with them.
torch from https://files.pythonhosted.org/packages/89/c1/72e9050d3e31e4df983f6e06799a1a4c896427c1e5645a6d810940944b60/torch-1.8.0-cp38-cp38-manylinux1_x86_64.whl#sha256=fa1e391cca3937d5dea31f31a1a80a01bd4a8062c039448c254bbf5a58eb0787 (from -r requirements.txt (line 3)):
Expected sha256 fa1e391cca3937d5dea31f31a1a80a01bd4a8062c039448c254bbf5a58eb0787
Got d5466637c17c3ae0c81c00d93a0b7c8d8428cfd216f54953a11d0788ea7b74fb
requirements.txt 文件如下:
numpy
opencv-python
torch
但是,一次安装这些软件包时一切正常:
RUN python3.8 -m pip install numpy
RUN python3.8 -m pip install opencv-python
RUN python3.8 -m pip install torch
任何想法如何解决这个问题?
*** 编辑 ***
Dockerfile 到此为止:
FROM public.ecr.aws/lambda/python:3.8
COPY requirements.txt ./
解决方法
你可以尝试一些事情。根据您的基本映像,您可以通过以下方式运行 pip install:
RUN pip install -r requirements.txt
另一种选择是更改您的 requirements.txt,使其受版本控制。然后你可以确定你有兼容的版本,并且通常是一个很好的做法。例如:
torch==1.8.0
尝试在没有缓存的情况下再次运行 Docker:
docker build -no-cache
或者你可以检查这个答案:
ERROR: THESE PACKAGES DO NOT MATCH THE HASHES FROM THE REQUIREMENTS FILE. when updating Django
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。