#開発環境
Rails 6.1.1
Ruby 2.7.2
mac 0S Big Sur 11.2.3
#rails serverが立ち上がらない
以下のエラーが発生しました。
ターミナル
$ rails s
=> Booting Puma
=> Rails 6.1.1 application starting in development
=> Run `rails server --help` for more startup options
A server is already running. Check /Users/*****/Rails/******/tmp/pids/server.pid.
Exiting
#発生原因
「すでにRailsサーバーを起動しているor前回のプロセスを正確に終了できていないよ」
とのことでしょうか?
以下のコマンドで確認します。
ターミナル
$ ps -a | grep rails
ps -a
= 現在実行中のプロセス番号(PID)を表示する。
grep rails
= 指定された入力(rails)から、指定したパターンにマッチする文字列を検索
ターミナル
$ ps -a | grep rails
48976 ttys002 0:00.00 grep --color=auto rails
プロセス番号(PID)48976が起動中のようです。
#killコマンドで対処
ターミナルの再起動で解決する場合もあるようですが、今回はkillコマンドで対処します。
killコマンド(物騒..)は実行しているプロセスを終了させることができるコマンドです。
こちらのコマンドで先程のプロセス番号(PID)48976
に対して、
-9(デフォルトよりも強制的に修正するシグナルID)
をつけて強制終了させてみます。
ターミナル
$ kill -9 プロセス番号(PID)48976
するとrails serverが立ち上がるようになりました。
#その他
エラーログにport 3000 (Errno::EADDRINUSE)
と記載されている場合は以下が有効です。
ターミナル
$ kill -9 $(lsof -i tcp:3000 -t)