如何在我的django项目的python virtualenv中安装ruby gem(foreman)?我需要吗?

时间:2012-01-10 18:25:11

标签: django heroku virtualenv foreman

我正在尝试按照此处的说明操作:http://honza.ca/2011/06/install-ruby-gems-into-virtualenv

但是,我在系统上找不到postactivate脚本。此链接:http://bruno.im/2011/sep/29/streamline-your-django-workflow/表示应该有一个名为~/.virtualenvs/postactivate的文件,但它不在我的系统上。

我已经安装了virtualenv并设置了一个具有以下结构的django应用程序:

django-project/
    .git/
    .gitignore
    blossom/              # top of my django project
        __init__.py
        blossom-sqlite3-db
        manage.py
        onora/            # my actual django app
            __init__.py
            models.py
            tests.py
            views.py
        settings.py
        urls.py
    requirements.txt
    virtualenvironment/
        .Python@ -> /System/Library/Framework... 2.7
        bin/
        include/
        lib/

我现在想将gunicorn添加到我的requirements.txt文件中,使用pip安装它,然后使用以下行创建一个procfile(根据http://devcenter.heroku.com/articles/django#using_a_different_wsgi_server上的heroku说明):

web: python blossom/manage.py run_gunicorn -b "0.0.0.0:$PORT" -w 3

我的理解是,为了在我的本地系统上使用proc文件,我将不得不安装一个名为foreman的ruby gem。

我有几个问题。首先,我是否需要在这个虚拟环境中安装foreman?我需要虚拟环境,以便我可以保持整齐包含的所有内容,以便部署到heroku。如果我理解正在发生的事情,工头宝石仅用于在本地运行。所以也许我不需要在虚拟环境中安装工头。其次,如果我在虚拟环境中安装foreman会更好,我怎样才能找到我应该拥有的postactivate文件?

感谢。

1 个答案:

答案 0 :(得分:2)

Postactivate是virtualenvwrapper的一部分,{{3}}是一个建立在virtualenv之上的工具。