Linux

設置 UWSGI 以在 venv 中執行模組

  • June 25, 2014

我很難嘗試從 UWSGI 執行模組。這是我的部署程式碼的一部分:

# ENVIRONMENT
/usr/bin/pip install virtualenv
mkdir -p /srv/www/test
/usr/local/bin/virtualenv /srv/www/test/venv
source /srv/www/test/venv/bin/activate
/srv/www/test/venv/bin/pip install --force-reinstall -e git+git@github.com:xyz/project.git#egg=project

這是模組根目錄中 run.py 的程式碼

from project import app

def main():
   """docstring for main"""
   app.run(debug=True)

if __name__ == '__main__':
   main()

這是我試圖用來執行它的命令:

/usr/local/bin/uwsgi –virtualenv $ ENV –module project –chdir $ APP——大師

這是我執行此命令後收到的消息:

uWSGI 以 root 身份執行,您可以使用 –uid/–gid/–chroot 選項

*** 警告:你正在以 root 身份執行 uWSGI !!!(使用 –uid 標誌)** ***警告:您在沒有主程序管理器的情況下執行 uWSGI *** 您的程序數限制為 7890 您的記憶體頁面大小為 4096 字節

檢測到最大文件描述符數:1024

鎖定引擎:pthread 強大的互斥

鎖:禁用(您可以使用 – Thunder-lock)

缺少 -s/–socket 選項並且 stdin 不是套接字。*

錯誤是它似乎沒有正確執行或找到我的模組。誰能告訴我應該如何啟動 UWSGI 才能找到我的應用程序?

*您可以嘗試 –module 而不是 -w (可以做同樣的事情)。否則,請確保您的名稱正確;IE。傳遞 wsgi_module_name 或 wsgi_module_name:application_callable_name

雖然,您的錯誤消息實際上並沒有說明存在與此相關的問題。你還有沒有引用的消息嗎?*

引用自:https://serverfault.com/questions/573334