从虚拟环境

时间:2018-03-12 16:26:04

标签: python pip virtualenv

我想在没有互联网的计算机上安装软件包(通过 ssh连接)从计算机上安装软件包。

我的想法是,不是为每个项目+ python版本上传单独的pip包(与你想要使用虚拟环境的原因相同),我想安装目标包。具有Internet访问权限的计算机上的空虚拟环境,然后scpmy_env/lib/python3.6/site-packages到远程计算机的所有依赖项。

然后我从那里pip install

理想情景:

有互联网的机器

$ python -m venv my_env
$ source ./my_env/bin/activate
(my_env) $ pip install lime

然后将my_env/lib/python3.6/site-packages发送到远程计算机(让我们将其命名为source_packages/

没有互联网的机器

$ sudo pip install lime --find-everything-in ./source_packages

我试过

pip install lime --no-index --find-links path/to/my_env/lib/python3.6/site-packages/

但这会引发错误:

  

收集石灰

     

找不到满足要求lime的版本(来自>版本:)   没有匹配的石灰分布

修改

建议的解决方案(请参阅注释)即将开始工作,除非我遇到平台兼容性问题。 Internet机器是Mac,远程服务器是CentOS。

因此,我担心在某些情况下解压缩服务器的lib / python3.6 /目录中的site-packages /会失败。

关于pip download解决方案,它也是部分的,因为默认行为是根据当前平台下载,但--platform标志仅适用于二进制文件。因此,无法下载指定平台的lime包。

解决方法是能够运行

之类的东西
pip download --only-binary=:all: --platform=linux_x86_64 lime

但如果要求的二进制文件不可用,则下载源后退

0 个答案:

没有答案