🤔

コンテナ起動エラー Check /app/tmp/pids/server.pid.

に公開

コンテナの起動ができずlocalhost:3000に接続不可となった際の対処についてです。

docker-composeでコンテナの起動を行ったところ、

docker-compose up <サービス名>

以下の表示がでました。サーバーはすでに起動中であるといった内容です。

 Container名 | => Booting Puma
  Container名 | => Rails 7.0.5 application starting in development
 Container名 | => Run `bin/rails server --help` for more startup options
 Container名 | Exiting
 Container名 | A server is already running. Check /app/tmp/pids/server.pid.
 Container名 exited with code 1

localhost:3000にアクセスしようとしてもアクセスできません。docker-compose downをしてから再度docker-compose upを試しても状況は変わりませんでした。

対処法

server.pidを削除してからreilsサーバーを起動するように、docker-compose.ymlに以下追記したところ解決できました。

api:
  command: /bin/sh -c "rm -f tmp/pids/server.pid && bundle exec rails s -p 3000 -b '0.0.0.0'"

Discussion