【问题标题】:Should I activate my Python virtual environment before running my app in upstart?在新贵中运行我的应用程序之前,我应该激活我的 Python 虚拟环境吗?
【发布时间】:2018-08-11 03:35:21
【问题描述】:

我正在完成安装和配置Superset 应用程序的过程。 (一个允许对业务数据进行实时切片和分析的 Flask 应用程序。)

谈到 Python 虚拟环境,我已经阅读了许多文章和操作指南,并了解了它如何让您将包安装到虚拟环境中以保持我的应用程序整洁的概念。

现在我正在准备这个应用程序以供(内部)生产使用,我是否需要在启动 gunicorn 之前在我的新贵脚本中激活虚拟环境? 或者虚拟环境更只是用于开发并为我的应用程序安装/更新软件包? (在这种情况下,我可以直接启动 gunicorn,而无需激活 virtualenv 的额外步骤。)

在我尝试了解 virtualenv 如何在应用程序的日常生产使用和维护中发挥作用时,我将不胜感激。

【问题讨论】:

    标签: python flask virtualenv superset apache-superset


    【解决方案1】:

    您应该像在开发机器上一样在生产服务器上激活 virtualenv。它允许您在受控环境中的同一台机器上运行多个 Python 应用程序。无需担心更新一个 virtualenv 中的包会导致另一个 virtualenv 出现问题。

    如果我可以提出一些建议。我真的很喜欢使用virtualenvwrapper 来进一步简化 virtualenvs 的使用。它允许您使用$VIRTUAL_ENV/bin/ 中的脚本定义挂钩,例如:preactivate、postactivate、predeactivate 和 postdeactivate。这是设置 Python 应用程序可以使用的环境变量的好地方。

    一个简单的过程控制工具是supervisord

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-08-02
      • 2021-02-02
      • 2018-07-15
      • 2020-05-22
      • 2021-12-10
      • 1970-01-01
      • 2019-09-15
      • 1970-01-01
      相关资源
      最近更新 更多