Dockerで構築したPostgresqlについて、docker runの-pオプションで外部ポートを内部ポートと同じ5432にしていると接続できない


これは

Rustの勉強のために Zero to Production をやっていた際、 Postgresql の構築で詰まり試行錯誤したので、その解決方法をメモしたものです。

何が起きたか

3.4. Database SetupDockerを使いPostgresqlのサーバーを構築するのだが、記載されている手順ではpsqlコマンドが下記のエラーとなりうまく動作しなかった。

psql: エラー: FATAL:  ユーザ"postgres"のパスワード認証に失敗しました

環境

  • Windows 10 Home
  • IntelliJ IDEA Community EditionGit Bashをターミナルに指定)
  • Docker Desktop for Windows v4.0.1
  • Postgresql 13.4(latest)

解決方法

docker run-pオプションで指定している外部ポートを5432から5555に変更した。

変更前:
-p 5432:5432
変更後:
-p 5555:5432

原因

DockerにもPostgresqlにも明るくないので良く分からない。もしご存じの方いましたら教えてください。