Django アプリケーションを 経由で実行する方法を見つけましたsudo python /home/david/myproject/manage.py runserver 68.164.125.221:80
。ただし、ターミナルを終了すると、サーバーの実行が停止します。
このプロセスをバックグラウンドで実行しようとしましたが、実行後すぐにサーバーがシャットダウンしてしまいますsudo python /home/david/myproject/manage.py runserver 68.164.125.221:80 &
。
ターミナルで SSH セッションを終了した後でも Django アプリケーションを実行し続けるにはどうすればよいですか?
PS - この質問が初歩的だと思われたら申し訳ありません。フロントエンドの JavaScript プログラマーが猛スピードでサーバー管理者に変わらなければならないときに、このような愚かなことが起こります。
ベストアンサー1
会う画面。
ssh 経由で接続し、画面を起動します。これにより、ssh によって提供されるものの上に仮想コンソール エミュレーターが開きます。そこでサーバーを起動します。
次に、Ctrl + a を押し、次に d を押します。これにより、screen セッションが切断され、バックグラウンドで実行され続けます。
[R]e-attach するには、screen -r を使用します。
screen がインストールされておらず、インストールできない場合は、試したように、コマンドに & を追加して、バックグラウンドでアプリケーションを起動することもできます。ただし、その場合はターミナル ウィンドウを閉じないでください。bash コマンド exit または Ctrl-d を使用して切断するだけです。
screen の利点は、エラーなどが発生した場合でも、サーバーからの出力を読み取ることができることです。
Screen は、非常に強力なツールで、多くのコマンドがあります。Ctrl + a、次に c (作成) で新しい仮想ウィンドウを追加したり、Ctrl + a、次に n (次) または p (前) でウィンドウを切り替えたりできます。
ただし、使用するにはインストールする必要があります。ルートアクセス権を持っているようなので、問題にはならないはずです。
編集:tmux同じユースケースに対するもう一つの優れたソリューションです。