【问题标题】:Installing the Pyramid Framework on a disconnected system在断开连接的系统上安装 Pyramid 框架
【发布时间】:2012-03-03 06:08:00
【问题描述】:

我正在使用 Python 并决定专注于学习 Pyramid 作为我的主要框架。问题是我所做的工作是在没有外部连接的专用 LAN 上完成的,我找不到任何资源来获取设置虚拟环境所需的所有包,并在无法访问开放互联网的系统上建立金字塔。

任何人可能拥有的任何想法或资源将不胜感激。

谢谢

【问题讨论】:

    标签: python pyramid


    【解决方案1】:

    您好,感谢您为回答这个问题而提出的两个选项。直到最近我才能回到这个问题上,此时我阅读了这些答案并尝试了其中一个,然后才偶然发现了最佳解决方案。

    鉴于我正在使用的其他所有内容都是从源代码完成的,我尝试过(感谢我之前无法找到源代码的链接)并且我担心鉴于依赖项的数量我无法以这种方式安装金字塔它需要与它一起安装。然而,这确实让我能够准确地看到依赖包是什么。

    我正准备尝试使用 virtualenv 可重定位标志的另一个选项,但在此之前,我在 pip 中遇到了一个选项,它作为 virtualenv 的一部分安装,它允许您捆绑包并在以后安装它们而无需的网络连接。这最终成为我尝试过的解决方案并且它有效。至少大部分是。

    基本问题的解决方案是这样的。

    1) 将目录更改为您的 virtualenv 目录

    [user home]$ cd /path/to/virualenv/directory
    

    2)在联网的系统上键入以下内容,它将金字塔文件和依赖项下载到捆绑文件中

    [virtualenv_directory]$ bin/pip bundle <nameOfBundle>.pybundle pyramid
    

    3) 移动到目标系统和 cd 到上面的目标目录并使用以下命令安装

    [virtualenv_directory]$ bin/pip install <nameOfBundle>.pybundle
    

    在这种情况下,它将安装金字塔文件和依赖项。

    【讨论】:

      【解决方案2】:

      他们在package page 上提供了可供下载的源代码——您不能直接下载源代码,然后将其通过 USB 驱动器带到您的环境中吗?至于其他所需的包,通过 pip 安装它应该相当容易,并查看依赖项是什么——然后你可以将所有这些都带进来。事实上,依赖项都列在包页面上。

      一般来说,如果您使用的是封闭网络,您将不得不以某种方式将其引入,对吗?尽你所能。

      【讨论】:

      • 对不起,我现在才回到这个话题。在发布这个问题后,我遇到了一些问题,这让我不以为然。我会将我的完整回复/解决方案放在答案中。
      【解决方案3】:

      执行此操作的最简单方法是将其安装在网络外部机器上的 virtualenv 中,使用与封闭网络内使用的 Python 版本相同的 Python 版本。然后使用 virtualenvs --relocatable flag 使环境可重定位,将其复制到可以带入封闭网络的物理媒体之前。到目前为止,最困难的部分是 Pyramid 或其任何依赖项是否已编译扩展,因为编译后的二进制文件不太可能是可移植的。

      如果他们这样做,最好的选择是在您的外部机器上使用类似ClueReleaseManager 的东西,并使用它作为您的主要 PyPI 镜像安装 Pyramid(有关如何设置它的说明在链接页面上)。这会将所有源代码包下拉到一个目录中,然后您可以将其带入封闭环境进行编译。这样可以省去手动下载所有依赖的麻烦,但是设置成本有点高。

      【讨论】:

      • 对不起,我现在才回到这个话题。在发布这个问题后,我遇到了一些问题,这让我不以为然。我会将我的完整回复/解决方案放在答案中。
      猜你喜欢
      • 1970-01-01
      • 2020-01-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-08-03
      • 1970-01-01
      • 2011-01-06
      相关资源
      最近更新 更多