nodejsアプリのセッションサポートにredisを使用しています。redisサーバーをインストールしましたが、redis-serverを実行すると動作しますが、ターミナルを閉じるとredisが停止して動作しません。ターミナルを閉じた後、redisサーバーを実行し続けるにはどうすればよいですか?
回答:
Redisをデーモンとして起動する最も簡単な方法は、構成ファイルを編集して次の行を変更することです。
# By default Redis does not run as a daemon. Use 'yes' if you need it.
# Note that Redis will write a pid file in /var/run/redis.pid when daemonized.
daemonize yes
構成ファイルを起動するときは、必ずredis-serverコマンドラインで指定してください。
構成ファイルの例は、Redisディストリビューションで提供されています。
daemonize
yesに設定オプションをして生きているとそのドッカーコンテナを維持しようとしていた-D FOREGROUND
が、それは働いていなかったと容器を出ました。このオプションを削除し、daemonize
オプションをnoに戻しました。これで機能し、コンテナーは存続します。
また、簡単なオプションが必要な場合は、次のコマンドを実行しますredis-server --daemonize yes
。
redis-server &
ですか?
&
最後にそれを実行した場合、ターミナルを終了すると、サーバープロセスが強制終了されます。stackoverflow.com/a/15595391/6263317
nohup redis-server &
vsを使用するのはどうredis-server --daemonize
ですか?つまり、使用せずに同じ機能を実現する方法があるようです--daemonize
、そのオプションは実際には必要ありません。
Linuxでは、Windowsについてよくわかりません。nohupを使用してredisをバックグラウンドで実行します。nohupを使用してredisをバックグラウンドで実行するには
nohup ./redis-server &