如何确保pip从内部pypi获取包?

时间:2019-05-01 15:40:22

标签: python pip pypi

我有一个带有requirements.txt的应用程序,其中包括许多第三方库以及一个内部软件包,必须从私有pypi实例下载该内部软件包。像这样:

boto3
flask
flask-restplus
gunicorn
an_internal_package

问题是an_internal_package的命名很常见,并且阻塞了全局pypi上已经可用的软件包。例如,我们称它为twisted。我遇到的问题是,在--extra-index-url中设置requirements.txt似乎仍然从全局pypi中抢占twisted

--extra-index-url=https://some.internal.pypi.corp.lan
boto3
flask
flask-restplus
gunicorn
twisted # actually an internal package

我如何指示twisted应该仅从私有pypi而不是全局变量中加载?

2 个答案:

答案 0 :(得分:2)

您可以直接链接到内部索引上的软件包:

boto3
flask
flask-restplus
gunicorn
https://some.internal.pypi.corp.lan/simple/twisted/Twisted-19.2.0.tar.bz2

这具有固定依赖关系的作用,但是无论如何,这通常被认为是最佳实践。

答案 1 :(得分:-3)

您可以参考index寻求解决方案,这有点棘手。您应该同时处理私有pypi和主pypi。

您应该使用-index-url ,而不是使用-extra-index-url 。但是请阅读,我建议您阅读给定的链接