2015-01-15 69 views
1

我正在將Django安裝從1.4升級到1.7,這意味着我也正在從Python 2.6.6遷移到Python 2.7。生產服務器使用Debian 6.09,它需要全局的Python 2.6,不幸的是升級操作系統目前還不是有效的解決方案。如何配置全局導師使用pyenv和virtualenv

要解決這個問題,我安裝了下面的堆棧:2.7

  • 的virtualenv
  • virtualenvwrapper
  • uwsgi
  • 主管(從全球蟒蛇2.6安裝,運行

    • pyenv與蟒蛇作爲根)
    • nginx

    當我從virtualenv手動運行uwsgi時,該網站效果很好。但是,當我用supervisor啓動它時,它只會使用全局python安裝。

    由於用戶使用的virtualenv:

    (django1.7)[email protected]:~$ echo $PATH 
    /home/user/.virtualenvs/django1.7/bin:/home/user/.pyenv/shims:/home/user/.pyenv/bin:/usr/local/bin:/usr/bin:/bin 
    

    我的上司的配置文件:

    [program:app] 
    command = /home/user/.virtualenvs/django1.7/bin/uwsgi 
        --module app.wsgi 
        --socket 127.0.0.1:10001 
        --master 
        --harakiri 120 
        --max-requests 5000 
        --threads 6 
    directory=/home/user/app/ 
    environment=PATH="/home/user/.virtualenvs/django1.7/bin:/home/user/.pyenv/shims:/home/user/.pyenv/bin:",DJANGO_SETTINGS_MODULE="app.settings",HOME="/home/user" 
    user=user 
    autostart=true 
    autorestart=true 
    redirect_stderr=true 
    stopsignal=QUIT 
    

    誰能幫指出哪裏我的配置是錯誤的?

    謝謝!

  • 回答

    1

    uWSGI具有特定virtualenv配置指令:

    virtualenv=/home/user/.virtualenvs/django1.7 
    

    又如:

    https://github.com/miohtama/LibertyMusicStore/blob/master/conf/uwsgi.ini

    更多信息

    http://uwsgi-docs.readthedocs.org/en/latest/tutorials/dreamhost.html?highlight=virtualenv

    (貌似uWSGI d關於virtualenv的配置有點混亂,我可能需要仔細檢查這與作者)

    +0

    感謝您的幫助 - 我最終沒有修改wsgi配置,這對我來說是愚蠢的事情。 – Sid

    +0

    很酷。你解決了嗎? :) –

    1

    我發佈的配置結束了工作。我很愚蠢,沒有首先運行supervisorctl更新,以確保它加載在更新的配置中。