#エラー#
jupyterをDockerで動かそうと思った際に、以下のようなエラーが出て起動できませんでした。
terminal
ERROR: for db Cannot start service db: Ports are not available: listen tcp 0.0.0.0:5432: bind: address already in use
ERROR: Encountered errors while bringing up the project.
エラーメッセージを読むと、5432のPort番号が使われてしまっていて起動できないということでした。
##解決策##
まずポートを占領しているアプリケーションを特定します。
今回の場合は、5432なので以下で実行していきましょう。
terminal
$ sudo lsof -i : 5432
Password:
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
postgres 124 postgres 4u IPv6 0xda3bd3018b955b25 0t0 TCP *:postgresql (LISTEN)
postgres 124 postgres 5u IPv4 0xda3bd3018b95cb95 0t0 TCP *:postgresql (LISTEN)
Passwordの際に自分が設定しているパスワードを入力したらこれらのメッセージが出てきました。postgresが起動していて、Dockerが動かなかったみたいですね。ではこれを停止していきます。
terminal
$ sudo kill 124
ここで間違えて5432としないようにしてください。killする番号はPIDという部分の124です。
これで再度動かしてみると、できました。