web-dev-qa-db-ja.com

サーバーは既にRailsで実行されています

Rails sコマンドを使用してRailsサーバーを起動すると、A server is already running. Check C:/Sites/folder/Pids/Server.pidsが表示されます

ファイルを開くと、4桁の数字のみが出力されるため、この問題を解決するにはどうすればよいですか?

FYI

  1. 今回は、Rails cmdの他のインスタンスは実行されていません。
  2. タスクマネージャをチェックしましたが、cmd.exeのみが実行中のelseプロセスを表示していません。 (Windowsを使用)。
115
swapnesh

ファイルを削除します:C:/Sites/folder/Pids/Server.pids

179
rainkinz

旧ソリューション:

Rails s -p 4000 -P tmp/pids/server2.pid

また、より多くのオプションについてこの投稿を見つけることができます Rails 3.2.11への更新は、複数のサーバーの実行を中断します

新しいソリューション

実行するとRails s

=> WEBrickの起動

=> Rails 4.0.4アプリケーションがhttp://0.0.0.0:3000で開発中

=>起動オプションの詳細についてはRails server -hを実行してください

=> Ctrl-Cでサーバーをシャットダウン

サーバーはすでに実行されています。 /your_project_path/tmp/pids/server.pidを確認してください。終了

パスをここに表示します/your_project_path/tmp/pids/server.pid

このserver.pidファイルを削除します。

rm /your_project_path/tmp/pids/server.pid

またはサーバーが切り離されている場合は、以下のガイドラインに従ってください:

コマンド「Rails -d」を使用してRailsサーバーを切り離した場合、

コマンドを使用してRails切り離されたサーバーを削除します

ps -aef | grep Rails

このコマンドによるOR

Sudo lsof -wni tcp:3000

それから

kill -9 pID

またはこのコマンドを使用します

そのプログラムが実行されているポート名でプロセスを見つけて強制終了します。 3000の場合、プログラムが実行されているポートを交換します。

Sudo kill -9 $(lsof -i :3000 -t)
131
lsof -wni tcp:3000

その後、Rubyプロセスが表示され、実行できます。

kill -9 processid

今すぐプロセスを実行してください

Rails s thin

複数のプロセスを実行するのは良い考えではないようで、私が読んだことから多くの人が同意しています。残念ながらRailsで多くのメモリリークが発生していることに気付いたので、2つのプロセスが実行されているとは想像できませんでした。データがメモリに保存されているため、ページの更新が次第に遅くなることがわかっています。

79
Josh Bedo
kill -9 $(lsof -i tcp:3000 -t)
25
Karan Purohit
$ lsof -wni tcp:3000

# Kill the running process
$ kill -9 5946

$ rm tmp/server.pids

職長開始などサービスを開始

10
user1251378

あなたはそれを殺すことによってプロセスを取り除くことができます:

kill -9 $(lsof -i tcp:3000 -t)
7
manu

サーバープロセスを強制終了し、pidファイルが更新されなかった場合に発生します。最善の解決策は、ファイルを削除することですServer.pid

コマンドを使用する

rm <path to file Server.pid>

4
Ashish Sharma

gem install shutup

Railsプロジェクトの現在のフォルダーに移動して実行します

shutup#現在実行中のRailsプロセスを強制終了します

いつでもコマンド「shutup」を使用できます

免責事項:私はこの宝石の作成者です

注:rvmを使用している場合は、gemをグローバルにインストールします

rvm @global do gem install shutup
4
Lorenzo Sinisi

おそらく、^Zによってサーバーを中断しました。

vim C:/Sites/folder/Pids/Server.pidsoutputsが表す4つのデジタル番号はプロセスIDです。

kill -9 processidを使用して、プロセスIDをvim(または他のエディター)が出力した4つの数字に置き換えてください。

2
Cherenkov

Windowsを使用している場合は、 'Rails restart'のように1つの手順を実行するだけで、もう一度入力します- 'Rails s'いいよ。

1
Alok Amme

実行:fuser -k -n tcp 3000

これにより、デフォルトのポート3000で実行されているプロセスが強制終了されます。

0
almawhoob

実行:

ubuntu/Linuxで

 Sudo rm /var/www/html/Rails/WBPOCTEST/tmp/pids/server.pid

または

 pkill -9 Ruby

または

lsof -wni tcp:3000

kill -9 pid
0
Syed Shibli

私はこの問題を抱えて別のポートに設定しようとしましたが、私がする必要があるのは[app_directory]/tmp/pids/server.pidを削除することだけで、すべてがうまくいきました。

0
Dakota Michael

Windows Rails 5.2では、このファイルを削除します

c:/Sites/<your_folder>/tmp/pids/server.pid

そして走る

Rails s

再び。

0
MSC