由于从 `https://pypi.python.org/simple/` 返回的“永久移动”错误,`pip` 无法在 Docker 容器中安装包
Posted
技术标签:
【中文标题】由于从 `https://pypi.python.org/simple/` 返回的“永久移动”错误,`pip` 无法在 Docker 容器中安装包【英文标题】:`pip` failed to install package inside Docker container due to 'Move Permanently' error returned from `https://pypi.python.org/simple/` 【发布时间】:2019-05-24 13:51:43 【问题描述】:我想在Ubuntu 14.04
docker
容器中安装pip
软件包,但由于Move Permanently
从https://pypi.python.org/simple/
返回,它总是显示错误。奇怪的 (?) 点是运行Ubuntu 14.04
和相同版本的python
和pip
的主机成功安装pip
包。
Docker 版本:
$ docker --version
Docker version 1.12.6-cs13, build 0ee24d4
Dockerfile:(注意:为了测试我故意进入容器内)。
FROM ubuntu:14.04
RUN apt-get update
RUN apt-get -qq install python python-pip
WORKDIR /usr/src/app
COPY . .
CMD ["/bin/sh"]
在主机上:
$ uname -a
Linux duong2179-ubuntu 4.4.0-31-generic #50~14.04.1-Ubuntu SMP Wed Jul 13 01:07:32 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux
$ python --version
Python 2.7.6
$ pip --version
pip 1.5.4 from /usr/lib/python2.7/dist-packages (python 2.7)
$ sudo pip install simplejson==3.3.1
Downloading/unpacking simplejson==3.3.1
...
Successfully installed simplejson
容器内:
# uname -a
Linux duong2179-ubuntu 4.4.0-31-generic #50~14.04.1-Ubuntu SMP Wed Jul 13 01:07:32 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux
# python --version
Python 2.7.6
# pip --version
pip 1.5.4 from /usr/lib/python2.7/dist-packages (python 2.7)
# pip install simplejson==3.3.1
Downloading/unpacking simplejson==3.3.1
Cannot fetch index base URL https://pypi.python.org/simple/
Could not find any downloads that satisfy the requirement simplejson==3.3.1
来自主持人做curl
-ing https://pypi.python.org/simple/
:
$ curl https://pypi.python.org/simple/
<html><head><title>301 Moved Permanently</title></head><body><center><h1>301 Moved Permanently</h1></center></body></html>
【问题讨论】:
天真的问题(因为我对 Docker 不是很熟悉):你可以从容器内部访问互联网吗?你能做一个 curl 或类似的东西吗? 【参考方案1】:这是pip 1.5.4
的已知问题
在使用 pip
之前,将以下行添加到您的 Dockerfile
:
RUN python -m pip install --upgrade pip
【讨论】:
以上是关于由于从 `https://pypi.python.org/simple/` 返回的“永久移动”错误,`pip` 无法在 Docker 容器中安装包的主要内容,如果未能解决你的问题,请参考以下文章
python 来自https://pypi.python.org/pypi/skeleton/的基本Python类框架
无法获取索引库URL https://pypi.python.org/simple/〜安装Python 3 OS X之后