Top / Python / Processをデーモン化する、Supervisor

インストール

下記でインストールできます。

sudo apt-get install supervisor

以下殴り書きメモ:

こんな定義ファイルを書いておいて、

$ cat /etc/supervisor/conf.d/temp_disp.conf 
[program:temp_disp]
command=sudo python3 /home/pi/samples/temp_disp.py
numprocs=1
redirect_stderr=true
stdout_logfile=/var/log/temp_disp.log
user=pi

定義ファイル読み込みとサービスの追加(初回だけ)

$ sudo supervisorctl reread
temp_disp: available
$ sudo supervisorctl add temp_disp
temp_disp: added process group

これでプロセス起動まで行われます。

ステータス確認

$ sudo supervisorctl status
temp_disp                        RUNNING    pid 25258, uptime 0:00:05
$ sudo supervisorctl stop temp_disp
temp_disp: stopped
$ sudo supervisorctl status
temp_disp                        STOPPED    Oct 12 12:04 AM

デーモンの起動と停止

$ sudo supervisorctl start temp_disp
$ sudo supervisorctl stop temp_disp

デーモンの追加と削除は、

$ sudo supervisorctl add temp_disp
$ sudo supervisorctl remove temp_disp

登録はしておくけど自動起動しない設定

定義ファイル(↑だとtemp_disp.confのこと)に、

autostart=false

と書いておきます。(デフォルトはtrue)

落ちても自動再起動する

autorestart=true

カレントディレクトリの指定

directory=/tmp/

関連リンク


この記事は

選択肢 投票
おもしろかった 0  
そうでもない 0  
  • 設定ファイルを変えた際は、 sudo supervisorctl reread 、sudo supervisorctl reload でいいかな。 -- きの? 2016-12-17 (土) 21:27:45

Top / Python / Processをデーモン化する、Supervisor

現在のアクセス:1131


トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2016-12-17 (土) 22:28:37 (1062d)