【问题标题】:Run Pinax without VirtualEnv在没有 VirtualEnv 的情况下运行 Pinax
【发布时间】:2010-08-08 02:04:52
【问题描述】:

有没有办法在没有 virtualenv 的情况下运行 Pinax?

我想在没有 virtualenv 的情况下运行它,因为我想在 mediatemples 网格托管服务上的 django-container 上运行它。他们的容器可以扩展到 1Gb 的专用内存,所以我不必担心我自己的 VPS 或扩展问题。但他们的反应是:

" 由于 DjangoContainer 的工作方式,您将无法配置您的服务器以使用您的 virtualenv。本质上,DjangoContainer 是一个虚拟化服务器(除了 AccountCenter 工具,您无权访问它,或者'mtd' 命令行工具),其特定目的是为您的 Django 应用程序提供服务。它会挂载您的 django 容器文件夹,以便它拥有您的应用程序代码,但您不能修改它使用的 python 的版本或位置。这可能意味着您将不得不在没有 virtualenv 支持的情况下使用 Pinax,因为以这种方式使用 virtualenv 的一般想法是为您的 Pinax 应用程序创建一个自定义环境,正如我在这里提到的,它不可能指示服务器使用。"

【问题讨论】:

  • 为什么要在没有 virtualenv 的情况下运行它?
  • 在上面编辑以解释问题和 mediatemple 响应。有可能吗?

标签: django virtualenv pinax


【解决方案1】:

从 0.9a1 开始,Pinax 可以在没有 pinax-boot.py 的情况下使用,它是 virtualenv 依赖项(我们捆绑了它)。需求是项目级别的,必须使用 pip 安装。但是,setup_project 在安装要求时确实会强制使用虚拟环境(为了方便,它会为您调用 pip;我愿意在这里不强制使用虚拟环境)。您可以将--no-reqs 传递给setup_project 强制它跳过依赖项安装。然后你可以自己运行 pip 并安装它。

【讨论】:

    【解决方案2】:

    技术上是的,但是您必须更改分发的相当多的配置并手动安装很多库。 Pinax 将 virtualenv 作为一个非常低级别的内置假设。

    【讨论】:

    • 您能指出哪些库吗?这是因为 MediaTemple 不允许在其共享主机包上使用 virtualenv。但是简单的 django 效果很好。
    • Pinax 没有 virtualenv 作为一个非常低的内置假设。从 0.9 开始,Pinax 可以在没有 virtualenv 的情况下运行。
    • 正如 Brian Rosner 指出的那样非常正确。旧版本使这变得更加困难,但显然当前版本在这方面具有更大的灵活性。
    【解决方案3】:

    你可以,你需要做的就是找出 virtualenv 中的内容。设置它并在虚拟环境中安装 yolk,然后键入 yolk -l 以查看需要安装什么才能使其工作。

    【讨论】:

    • 您能详细说明一下吗?如何在 virtualenv 中安装 yolk?我是否在 pinax-virtualenv 目录中使用 pip 安装它并激活 virtualenv?
    • 获取相同信息的另一种方法是从该虚拟环境调用“pip freeze”。它将详细列出类似的信息,尽管没有那么冗长。 Yolk 做得更好,详细说明了依赖关系。如果你想在 virtualenv 中安装 yolk,一旦你激活它,“pip install yolk”就可以了。
    猜你喜欢
    • 1970-01-01
    • 2017-12-02
    • 1970-01-01
    • 1970-01-01
    • 2021-08-11
    • 2018-12-21
    • 2020-08-23
    • 2018-06-06
    • 2016-12-29
    相关资源
    最近更新 更多