【问题标题】:Installing Python 2.x along side 3.x Linux for Supervisor为 Supervisor 安装 Python 2.x 和 3.x Linux
【发布时间】:2018-10-25 15:23:42
【问题描述】:

目前在我的 linux 机器上,我已卸载 Linux 2.x 并将其替换为 3.6 以用于应用程序。

目前我正在运行主管,但无法启动服务。

当我尝试运行它时,我得到了

Process: 17113 ExecStart=/usr/bin/supervisord -n -c /etc/supervisor/supervisord.conf (code=exited, status=1/FAILURE)

主 PID:17113(code=exited,status=1/FAILURE)

因此,当我查看更详细的报告时,我得到了这样的结果。

File "/usr/local/lib/python3.6/dist-packages/pkg_resources/__init__.py", line 781, in resolve
    raise DistributionNotFound(req, requirers)
pkg_resources.DistributionNotFound: The 'supervisor==3.3.1' distribution was not found and is required by the application

当我调查此事时。该错误意味着我需要运行 Python 2.x,而 Supervisor 将无法在任何版本的 Python 3 上运行

如果是这种情况,我该如何重新安装 Python 2.7 并让它沿着第 3 面运行?

如果有人看到这个错误。我已更改配置文件以尝试解决此问题。一遍又一遍地停止并重新启动服务。我已经用尽了我所知道的一切,现在正在伸出援手。

我已经看到了如何通过在 2.x 旁边安装 Python3 来做到这一点,但不是相反。

我是 linux 的半新手,不了解软件包以及如何完全导航。

【问题讨论】:

  • 您的意思是您卸载了 Python 2.x,而不是 Linux 2.x?哪个发行版以及您是如何卸载它的?这在许多发行版上不受支持,您根本无法删除系统 Python 并且仍然可以正常安装。
  • 谢谢@tripleee 的建议,吸取教训:)

标签: python linux supervisord


【解决方案1】:

我强烈建议您使用虚拟环境,以便能够在同一台电脑上安装要求和调整多个不同的环境,而不会导致应用程序与其特定要求之间出现问题。

社区使用的主要工具是venv。

这里有一些命令来安装它、创建一个环境并激活它:

安装

pip install virtualenv

创建一个目录来测试它

mkdir python-virtual-environments && cd python-virtual-environments

创建一个 venv

# Python 2
virtualenv env

# Python 3
python3 -m venv env

激活您的新环境

source env/bin/activate

您将看到您的提示发生变化,并且您使用 pip 或类似工具安装的任何内容都将仅在其中可用。

在您的具体情况下,我会创建一个 Python2 virtualenv 来使用您的应用程序。

以下是实现这样一个结果的方法:

virtualenv --python=/usr/bin/python2.7 <path/to/myvirtualenv>

这是relevant documentation

【讨论】:

  • 这是一个很好的建议,但这是一个常见的常见问题解答;您可能应该只找到包含此信息的现有问题,并将此问题指定为重复项。
猜你喜欢
  • 1970-01-01
  • 2011-04-18
  • 2017-08-09
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-01-18
  • 1970-01-01
相关资源
最近更新 更多