将Windows Docker容器连接到本地PostgreSQL数据库

dzjeubhm  于 2023-11-18  发布在  PostgreSQL
关注(0)|答案(1)|浏览(145)

我正在做一个项目,我需要在Windows Docker容器中运行Python应用程序。该应用程序连接到我在本地Windows机器上运行的PostgreSQL数据库。我在设置Docker容器和本地数据库之间的连接时遇到了问题。
我的设置:
我有一个Windows Docker容器,我在其中运行我的Python应用程序。我在本地Windows机器上安装并运行PostgreSQL。Python应用程序需要连接到本地PostgreSQL数据库。
我遇到的问题包括:

Error:
    Traceback (most recent call last):
      File "C:\webapp\app.py", line 15, in <module>
        conn = psycopg2.connect(**db_params)

           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Python\Lib\site-packages\psycopg2\__init__.py", line 122, in connect
    conn = _connect(dsn, connection_factory=connection_factory, **kwasync)
       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
psycopg2.OperationalError: connection to server at "localhost" (::1), port 5432 failed: Connection refused 
    Is the server running on that host and accepting TCP/IP connections?

字符串
连接到服务器“localhost" (127.0.0.1), port 5432 failed: Connection refused服务器是否在该主机上运行并接受TCP/IP连接?
如何配置Docker容器,使其可以访问我的Windows机器上的本地PostgreSQL数据库。
如何在容器中打开PostgreSQL端口
如何确保PostgreSQL数据库允许来自Docker容器的连接。
如何修改Python应用程序代码以连接到本地PostgreSQL数据库。
我很感激任何关于配置Windows Docker容器、PostgreSQL和我的Python应用程序的指导或最佳实践,以便在此设置中实现成功的数据库连接。

fjaof16o

fjaof16o1#

我通过匹配python app文件和dockerfile的端口号并使用network作为'nat'来解决上述错误。
谢谢你,谢谢

相关问题