我对python包装还是比较新的,每次我觉得我找到“解决方案”时,我都会抛出另一个曲线球,这是我的问题,接着是我尝试过的:
我的包装成熟度进展缓慢:
对于连接系统,我有一个非常好的过程
对于断开连接的系统,我尝试了一些方法。车轮似乎是合适的,但我无法进入包括setuptools,easy_install,pip的“最终”安装。我不熟悉轮子,所以也许我错过了一些明显的东西。
我从这些引用开始:
是否有引用具有Python的系统的引用,已断开连接,但没有setuptools,pip,wheels,virtualenv?我安装这个简单代理所必须做的事情列表变得太长了:/我想如果我能完成依赖链,必须有一种方法可以将自定义脚本锁定到setup.py来缩小自定义步骤退缩......
答案 0 :(得分:1)
您的流程可能会根据您定位的平台而有所不同,但一般来说,获得您要实现的目标的典型方法是在在线计算机上下载包,将其复制到离线计算机,然后从文件而不是从URL或存储库安装它们。
基于RPM的发行版的可能工作流程可能是:
python-pip
(使用rpm
或yum-downloadonly
,在在线计算机上下载该程序包,然后将其复制并安装在离线程序包{{1 }})。rpm -i python-pip.<whatever-version-and-architecture-you-downloaded>
下载所需的软件包。pip install --download <pkgname>
或scp
将指定目录rsync
打包到离线计算机上X
在离线计算机上安装软件包。如果您必须在许多服务器上复制该过程,我建议您在防火墙后面设置自己的存储库。在pip install --find-links=<your-dir-here> <pkgname>
的情况下,它非常简单,因为它只是告诉pip
使用目录作为自己的索引:
pip
对于RPM或DEB repos来说有点复杂(但不是火箭科学!),但也可能没有必要,因为你真的应该只安装$ pip install --no-index --find-links=file:///local/dir/ SomePackage
一次。