Ruby on railsのサーバー起動時のエラー「A server is already running. Check /myapp/tmp/pids/server.pid.」が出た時の対処

Ruby on rails

下記サイトを参考に作ったDockerコンテナを再起動した時うまく動かなくなってしまった…

クイックスタート・ガイド:Docker Compose と Rails — Docker-docs-ja 17.06.Beta ドキュメント

「A server is already running. Check /myapp/tmp/pids/server.pid.」というエラーが出てしまい、どうやらrailsサーバー起動に失敗している。

docker-compose up した時に以下のようなエラー。

>docker-compose up
web_1 | A server is already running. Check /myapp/tmp/pids/server.pid.
web_1 | => Booting Puma
web_1 | => Rails 5.2.1 application starting in development
web_1 | => Run `rails server -h` for more startup options
web_1 | Exiting
docker_web_1 exited with code 1

Dockerコンテナを終了した時にserver.pidが残ってしまい、サーバー起動中と見なされる状態になってしまったようです。

対処方法としては、ログに出ている「/myapp/tmp/pids/server.pid」を削除してしまえばOKです。(他に正しい方法があるのかも…)

railsの事がよくわからず、これだけで1時間ぐらい迷ってしまった。

勉強になりました。

コメント/ピンバック

タイトルとURLをコピーしました