linux 使用supervisor管理開機啟動uwsgi
記錄目的:網上的方法雖然寫的很清楚,但是中間還是踩了一些坑,因此這次記錄下來,以便日後回顧防坑。
先簡單敘述下環境:
1、系統:ubuntu16.04 desktop。
2、pthon版本:2.7 和 3.5
3、網站使用的框架: django2.0.2 (python3)
4、網站發布方式:Nginx + uwsgi + django, uwsgi和nginx的配置此處不講,畢竟不是主角
下面是實現supervisor的步驟:
step1. apt-get install supervisor (一說 pip install supervisor 也可,但是要注意supervisor僅支持python2-pip 安裝)
step2. 配置supervisord.conf
- cd /etc/supervisor
- vim supervisord.conf
- 添加如下信息:
[program:uwsgi] ; 注意program:不能省,類似於聲明這是你定義的自啟動程序
command=/usr/local/bin/uwsgi --ini /var/www/workdir/script/uwsgi.ini ; --ini 後跟ini配置文件的目錄
stopsignal=QUIT
autostart=true ; 設置該程序在supervisor啟動後自動啟動
autorestart=true ; 當該程序停止後,無條件重新啟動。有三個選項分別為true false 和 unexcepted.
stdout_logfile=/var/www/workdir/script/supervisor.log ; 日誌保存路徑
stderr_logfile=/var/www/workdir/script/supervisor_err.log ; 錯誤保存路徑
step3. 載入添加的自啟動程序
首先切換到root許可權(非root會報錯error <class "socket.error">, [Errno 13] Permission denied: file: /use/lib/python2.7/socket.py line: 228)
接著輸入supervisorctrl reload, 會提示Restart supervisord
最後,檢驗是否成功自啟動了程序,輸入 ps -ef|grep uwsgi 查看uwsgi是否執行。
※pixhawk 自定義uart的應用
※基於SSM架構的網路租車系統
TAG:程序員小新人學習 |