pip安装的奇怪行为

时间:2015-06-08 14:08:37

标签: python pip

我试图通过pip install安装python依赖项。出于安全原因,我的环境无法访问python默认包索引(http://pypi.python.org)。但我有自己的pypi服务器。最大的问题是,即使用我的pypi服务器设置pip install的-i标志,pip install仍然在python默认包索引中查找包。发生这种情况时,pip install无法访问python默认包索引,并且会发生连接超时。

以下是我正在运行的命令行:

pip install --index-url http://custom.pypi.server/simple --trusted-host custom.pypi.server -r requirements.txt -vv

这是控制台输出:

Starting new HTTPS connection (1): pypi.python.org
There was an error checking the latest version of pip
ConnectTimeout: HTTPSConnectionPool(host='pypi.python.org', port=443): Max retries exceeded with url: /pypi/pip/json (Caused by ConnectTimeoutError(<pip._vendor.requests.packages.urllib3.connection.VerifiedHTTPSConnection object at 0x153c3ed0>, 'Connection to pypi.python.org timed out. (connect timeout=5)'))
Getting page http://custom.pypi.server/simple/dependency/
Starting new HTTP connection (1): custom.pypi.server
"GET /simple/dependency/ HTTP/1.1" 200 277
Download error on https://pypi.python.org/simple/setuptools_git/: [Errno 110] Connection timed out -- Some packages may not be found!

对于直接依赖,pip install就像一个魅力。但是,对于我的依赖项(setuptools_git)的依赖项,pip install会忽略自定义pypi服务器。

有人可以帮助我吗?

谢谢! : - )

1 个答案:

答案 0 :(得分:0)

getCorrespondedUsers: (state) => {
        return state.messages.filter((obj, pos, arr) => {
           return arr.map(mapObj => mapObj["corresponde_id"]).indexOf(obj["corresponde_id"]) === pos;
    });
}

不要定期检查PyPI以确定是否有新版本的pip可下载。暗示--no-index。