我正在制作一个Dockerfile来在centos7基础上安装python38。在pip3命令之前,所有文件都可以正常工作。Dockerile看起来像这样。
FROM centos:centos7
RUN RPM_LIST=" \
gcc \
make \
openssl-devel \
bzip2-devel \
libffi-devel" && \
yum install -y $RPM_LIST && \
curl -O https://www.python.org/ftp/python/3.8.2/Python-3.8.2.tgz && \
tar xvf Python-3.8.2.tgz && \
cd Python-3.8.2 && \
./configure && \
make && \
make install && \
rm -rf /Python-3.8.2* && \
yum remove -y $RPM_LIST && \
pip3 install retrying错误为The folder you are executing pip from can no longer be found.。
我将最后一行改为RUN pip3 install retrying,它开始工作了,但它向我的image添加了一个额外的300 MB,这是我无法实现的。
有什么建议,我在这里遗漏了什么,或者有什么替代方法吗?
发布于 2020-06-10 05:55:45
这就是工作的Dockerfile的样子
FROM centos:centos7
RUN RPM_LIST=" \
gcc \
make \
openssl-devel \
bzip2-devel \
libffi-devel" && \
yum install -y $RPM_LIST && \
curl -O https://www.python.org/ftp/python/3.8.2/Python-3.8.2.tgz && \
tar xvf Python-3.8.2.tgz && \
cd Python-3.8.2 && \
./configure && \
make && \
make install && \
pip3 install retrying && \
yum remove -y $RPM_LIST && \
rm -rf /Python-3.8.2*由于某些原因,从Python-3.8.2文件夹调用pip3命令不起作用。在这里,我将rm命令移到了pip3调用之后。希望这些信息能对某些人有所帮助。
发布于 2020-12-11 20:15:03
我刚碰到The folder you are executing pip from can no longer be found.
我的Dockerfile已经几个月没有改变了。它不安装pip。
在对需求文件运行pip install之前,它确实会强制删除并创建一个文件夹-- pip应该在这个文件中安装内容。
解决方法?我只需再运行一次,它就起作用了。嗯..。
所以我在这里发布这篇文章,以防有一些神秘的时间问题,人们希望收集关于它的线索。
-编辑添加--
另外,昨天我遇到了docker的问题,它要求在docker的首选项中关闭其实验性的gRPC功能。也许它可能有某种关联?
Why does Serverless produce an Invalid Cross-device link Error when trying to package or deploy?
https://stackoverflow.com/questions/62234478
复制相似问题