LoginSignup
18
15

More than 3 years have passed since last update.

【Docker初心者】localhostに繋がらなくなった時

Last updated at Posted at 2019-09-20

はじめに

Dockerでアプリ開発中の初心者向けの記事になります。
いつも通りlocalhostサーバーを走らせアクセスしようとしたところサーバに接続できませんとの表示が。その時の対処法になります。

試したこと

docker-compose.ymlファイル内にcommand: bundle exec rails s -p 3000 -b '0.0.0.0'確認。
ターミナルにてdocker-compose builddocker-compose upコマンド実行後にdocker exec -it コンテナID /bin/bashでコンテナ内に入ろうとしてみるも、

Error response from daemon: Container コンテナID is not running

このコンテナが動いていないとエラー。
こういう時はlog確認、ということでdocker logs コンテナIDコマンド実行

A server is already running. Check /myapp/tmp/pids/server.pid.
=> Booting Puma
=> Rails 5.2.3 application starting in development 
=> Run `rails server -h` for more startup options
Exiting

今度はサーバーはすでに動いているとのメッセージが。
上記メッセージにある/myapp/tmp/pids/server.pidの中身を確認、すると

server.pid
1

ポツンと数字の1発見、これを削除し再びdocker-compose upコマンドで正常にlocalhost復旧しました。

結論

本来docker-compose upコマンド実行でサーバーが走っている時は中身に1が入っているserver.pidが作られ、docker-compose down時には自動で削除されますが、自分の場合はどこかのタイミングで誤ってサーバーをCtrl-cで閉じてしまったらしくserver.pidが正常に削除されなかったことがlocalhostに接続できないエラーに繋がってしまったようです。
非常に単純な原因でしたが、このあたりの情報があまり多くなくエラー解決に結構な時間が掛かってしまいました。
この記事が少しでも誰かの役にたてば幸いです。

18
15
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
18
15