😎
"`rails s`でサーバー起動時の"「`A server is already running.`」エラーへの対処
事象
レイルズサーバーを立ち上げようとしたところ、
「A server is already running.
」エラーが発生
$ bundle exec rails s
=> Booting Puma
=> Rails 6.0.3.4 application starting in development
=> Run `rails server --help` for more startup options
A server is already running. Check /home/masa/environment/RailsTutorial/sample_app2/tmp/pids/server.pid.
Exiting
対処
server.pid
ファイルの中身を確認。
$ cat /home/masa/environment/RailsTutorial/sample_app2/tmp/pids/server.pid
895
対象サーバーのプロセスIDは895
。
コマンドでも確認。
$ lsof -i:3000
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
ruby 895 masa 13u IPv4 19793 0t0 TCP localhost:3000 (LISTEN)
ruby 895 masa 14u IPv6 19794 0t0 TCP ip6-localhost:3000 (LISTEN)
該当プロセス895
を削除。
$ kill 895
server.pid
ファイルを再度確認。
$ ls /home/masa/environment/RailsTutorial/sample_app2/tmp/pids/server.pid
ls: cannot access '/home/masa/environment/RailsTutorial/sample_app2/tmp/pids/server.pid': No such file or directory
該当プロセス895
をkill
したことで、server.pid
ファイルも削除された。
サーバー再起動
$ rails s
無事起動できました。
Discussion