ターミナルで実行したFlaskをターミナルを閉じても実行する方法について記載します。
目次
1. 常時実行するには nohup コマンドを使用します
nohup コマンドを使用するとターミナルを閉じてもプロセスが停止されず常時実行することができます。
実行するPythonファイルを環境変数に設定します
実行するファイルが /home/sample.py の場合は、次のようにします。
export FLASK_APP=/home/sample.py
nohupコマンドでFlaskを実行します
書式
nohup flask run –host=’0.0.0.0′ –port=5000 >正常ログの出力先パス.log 2>エラーログの出力先パス &
実行例
nohup flask run –host=’0.0.0.0′ –port=5000 >/home/log/sample_suc.log 2>/home/sumple_err.log &
また、nohupコマンドを実行すると、次のように起動されたプロセスIDがターミナルに表示されます。
[1] 8892
上記は例ですが、Flaskを停止する際に使用します。
2. Flaskの停止には kill コマンドを使用します
kill コマンドにFlaskを実行中のプロセスIDを指定して停止します。
もし、プロセスIDが分からなくなった場合は、次のコマンドからプロセスID を見つけます。
Pythonで実行しているプロセス一覧を表示します
ps -fA | grep python
ターミナルに Pythonで実行中のプロセス一覧が表示されます。
XXXX 8892 8317 3 09:12 pts/0 00:00:00 /bin/python3 /usr/local/bin/flask run –host=0.0.0.0 –port=5000
この場合、8892 がプロセスIDになります。
killコマンドでプロセスを停止します
プロセスIDが 8892 の場合
kill 8892
以上が Flaskの常時実行・停止方法になります。