【问题标题】:Pyramid not included in Python virtualenvPyramid 不包含在 Python virtualenv 中
【发布时间】:2020-10-16 01:56:11
【问题描述】:

我是一位经验丰富的开发人员,但对 Python 和 Pyramid 不是很熟悉。

我正在尝试遵循一些(有点陈旧且不清楚)部署 Pyramid Web 应用程序的说明。我的操作系统是 Ubuntu 16.04。

说明说要安装 virtualenv 和 Pyramid - 我使用 apt install virtualenvapt install python-pyramid 安装。然后他们说我应该在虚拟环境中运行应用程序,所以我用virtualenv . -ppython3 构建它,并用source bin/activate 激活它。我从 GitHub 上的一个准备运行的 buildout 安装应用程序。构建包括一个“production.ini”文件,其中包含 pserve 的参数。

但是用 virtualenv 构建的虚拟环境中不包含 Pyramid。 (例如,bin 目录中没有“pserve”)所以我无法使用bin/pserve etc/production.ini 运行应用程序,如说明所述。如果我只尝试“pserve”,则在尝试访问“var/waitress-%(process_num)s.sock”之类的文件时会出错。应用程序在虚拟环境中找不到的文件。

我一直在寻找告诉 virtualenv 包含 Pyramid 的标志,但找不到任何标志。我忽略了什么吗?我将非常感谢您的帮助! :-)

/来自瑞典的安德斯

【问题讨论】:

标签: python virtualenv pyramid


【解决方案1】:

也许您可能想尝试使用 pip 在您的虚拟环境中安装 Pyramid,因为 apt 安装的库安装在 /opt 中,而不是对 Python 可见。在指南中,您似乎想通过虚拟环境安装 Pyramid 以便您的程序可以使用它,所以我认为您最好使用 pip 而不是 apt-get。我做了一个快速的谷歌搜索,看起来this 是你需要的库。在这里,您只需在使用pip install pyramid 进入虚拟环境后运行安装命令。这样,您也应该只能在虚拟环境中访问它!

【讨论】:

    【解决方案2】:

    您提到它正在使用 buildout - 我假设这是 zc.buildout。 buildout 通常管理自己的 virtualenv 并处理安装所有必要的依赖项。这实际上取决于该构建的配置方式,因为那里没有关于做什么或如何运行您的应用程序的标准。我通常希望 pserve 在 bin 文件夹中公开,但可能会公开另一个特定于应用程序的脚本。

    【讨论】:

      猜你喜欢
      • 2012-10-04
      • 2015-10-15
      • 2017-12-27
      • 2017-01-26
      • 2015-06-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多