【python】Django起動・停止

services-DjangoPython_1

Djangoの起動

通常のDjango起動

python manage.py runserver

Django起動後にコマンドを実行したい

コマンドの最後に「&」をつけるとバックグランドで実行されます。
バックグランドで実行されるのでほかのコマンドを実行することができます。
ただし、止めるためにはプロセスを確認して停止する必要があります。
python manage.py runserver&

バージョンを指定したDjango起動

python3 manage.py runserver

Portを指定したDjango起動

デフォルトのポートは8000番 8001番に変更したい場合は
python manage.py runserver :8001

IPとPortを指定したDjango起動

nginxのhoge.confで下記のような設定をしている場合
proxy_pass http://127.0.0.1:8001;
python manage.py runserver 127.0.0.1:8001

Djangoの停止

通常のDjango起動であれば「[command]or[ctrl]+C」でDjangoの起動を停止することができます。

バックグランドで実行した場合、プロセスを停止する必要があります。

Djangoバックグランド起動

python manage.py runserver&

プロセスの停止方法

ps aux | grep python
でPID:プロセス番号を確認します。

PIDを指定してプロセスを削除します。
kill -9 [PID]

このとき問題になるのがPIDです。PIDがうまくわからない場合
余計なプロセスまで停止してしまう可能性があります。

ワンライナーで簡単にDjangoを停止させる方法

ps -ef|awk 'BEGIN{}{if(match($8, /python/))system("kill -9 " $2)}END{}'

上記コマンドを実行するとpythonの実行プロセスが停止します。
よく使うと思うのでshellに登録しておいたほうが便利ですね。