小编给大家分享一下如何处理在docker中pip使用私有源进行依赖安装依然请求外网源的问题,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!
近期在进行应用容器化,需要基于python2.7.12构建应用镜像。在docker中配置了pip.conf指定使用内网源,但依然发现有依赖安装不成功。
异常信息是连接官方源失败,信息如下:
Collecting positional>=1.0.1 (from python-keystoneclient==3.5.1->-r /monitor/requirements.txt (line 7)) Downloading http://10.xx.xxx.xxx/repository/pypi-proxy/packages/positional/1.2.1/positional-1.2.1.tar.gz Complete output from command python setup.py egg_info: Download error on https://pypi.python.org/simple/pbr/: [Errno 99] Cannot assign requested address -- Some packages may not be found! Couldn't find index page for 'pbr' (maybe misspelled?) Download error on https://pypi.python.org/simple/: [Errno 99] Cannot assign requested address -- Some packages may not be found! No local packages or working download links found for pbr>=1.8 Traceback (most recent call last): ... distutils.errors.DistutilsError: Could not find suitable distribution for Requirement.parse('pbr>=1.8')
大致意思就是安装positional时需要安装pbr>=1.8的依赖,但此依赖从外网安装失败。
但在pip.conf中已经配置内网源,并且从positional的安装路径来看是生效了的。
后面把positional的源码下载下来后,在setup.py中发现里面有通过setuptools安装pbr依赖
setuptools.setup( setup_requires=['pbr>=1.8'], pbr=True)
经过查询setuptools和pip配置源的方式不一样,是通过~/.pydistutils.cfg文件来配置的。
通过在镜像时增加该文件,顺利解决了依赖安装的问题。
以上是“如何处理在docker中pip使用私有源进行依赖安装依然请求外网源的问题”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注亿速云行业资讯频道!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。