問題は非常に単純だったので、私のコンピューターはすでにPostgresのインスタンスを実行していましたが、:5432
でまだ実行されていることに気づいていませんでした(Docker内ではありません)。 、チェック:
$ lsof -n -i:5432 | grep LISTEN
そのため、https://gist.github.com/sgnl/609557ebacd3378f3b72> 、実行しました
$ pg-stop
そして、Dockerインスタンスへの接続に問題はありませんでした。
編集(2019/07/02)
この質問は最近10,000回の視聴回数を超えたので、なぜこれが起こったのかについて詳しく説明する必要があると思いました。
通常、Dockerを介して実行し、Pythonを使用して、postgresデータベースに接続するには、psycopg2
をインストールする必要があります。 、pip3 install psycopg2
経由 、ただし、このコマンドを実行すると、次のようになります。
Error: pg_config executable not found.
これは、psycopg2がpostgresライブラリのオペレーティングシステムのインストールを必要とするためです:
yum install postgresql-devel
apt-get install postgresql-client
さて、Macでは、brewでも同じことをする必要があります:
brew install postgresql
私が気づかなかったことの1つは、Macで上記を実行すると、必要なライブラリがインストールされるだけでなく、も :5432
でデータベースを開始します 。これはすべてバックグラウンドで行われたため、ポートが使用されていることなどを通知する通常のエラーがポップアップ表示されなかったため、これが問題であるとは思いもしませんでした...