2014-02-13 58 views
2

所以,當我運行命令錯誤啓動Gunicorn因爲沒人時

gunicorn test.wsgi:application --bind 127.0.0.1:8000 --workers=3 --user=nobody 

我得到的錯誤:

OSError: [Errno 1] Operation not permitted: '/tmp/wgunicorn-QGaR6q' 

這似乎是我不能啓動進程作爲另一個用戶,所以,當我嘗試使用sudo相同的命令,我收到了一堆錯誤處理:

ImportError: No module named django.core.wsgi 

raise HaltServer(reason, self.WORKER_BOOT_ERROR) 
gunicorn.errors.HaltServer: <HaltServer 'Worker failed to boot.' 3> 

我在虛擬環境中做所有這些,所以我認爲它必須處理,而不是在sudo中識別它,但沒有sudo我沒有權限啓動服務器作爲另一用戶。

+0

爲您系統上的'/ tmp'目錄檢查權限... –

+0

權限允許每個人寫/執行/讀訪問。我更加關注它,並且在本指南中創建數字海洋飛沫的django項目後,不少人遇到與我相同的問題。 – dl8

回答

3

如果您編輯您的主管的應用程序conf或運行該命令沒有--user標誌它的工作,我有這個相同的問題。我也在使用數字海洋液滴,並沒有能夠讓主管與用戶標誌一起工作。

+0

你不需要--user標誌來將用戶設置爲nobody嗎? – dl8

+0

那麼我正在使用主管來運行我寫的gunicorn腳本。我將gunicorn腳本中的用戶標誌設置爲我服務器上的當前用戶,並從管理員配置文件中刪除用戶標誌,因爲我認爲這是創建衝突。對不起,我不清楚這一點。 – zac

0

爲了理清導入錯誤 (導入錯誤:沒有模塊名爲django.core.wsgi)

確保你已經在你的virtualenv安裝的Django

要在安裝Django的virtualenv進入下面的命令: cd <virtualenvdirectory>source bin/activatepip install django