如何安装私有Python包作为构建的一部分

Eli*_*Eli 11 python pip git-submodules docker

我有一个相当大的私有python包我刚刚完成创建.我想将它作为我在Docker容器中的应用程序的构建过程的一部分进行安装(尽管这不是那么重要).包源非常大,所以理想情况下我不会下载/保留整个源代码.

现在,我一直在和我的应用程序一起传递包源,但这是笨拙的,希望是暂时的.什么是更好的方式?git子模块/子树?我对此很陌生.

Vin*_*met 9

如果您将github与私有仓库一起使用,则必须创建SSH部署密钥并将私钥添加到应用程序文件夹以进行构建.

pip install git+git://github.com/myuser/foo.git@v123

或者,您可以将pip-cache文件夹从主机安装到容器中,然后从该文件夹执行pip install.您必须使用您的应用程序将python包保存在缓存目录中.

pip install --no-index --find-links=/my/pip-cache/

您可以使用以下命令将python包安装到此pip-cache:

前点9.0.1:

pip install --download pip-cache/ package1 package2

点9.0.1+(thx评论@James Hiew):

pip install download pip-cache/ package1 package2


syg*_*syg 7

您可以在Github中设置OAuth令牌并使用命令

pip install git+https://<your_oauth_token>:x-oauth-basic@github.com/myuser/foo.git

这里有更多的文档.


nat*_*ill 0

我将它放在一个单独的私有存储库中,然后根据要求使用 pip 安装它:

pip install git+git://github.com/myuser/foo.git@v123
Run Code Online (Sandbox Code Playgroud)