postgresql Postgres连接不可能

aij0ehis  于 2023-10-18  发布在  PostgreSQL
关注(0)|答案(2)|浏览(119)

我有一个问题连接到我的postgres。它在我的Docker中正常运行,但我无法通过Python连接到该容器。此外,我没有收到错误消息。“E”是空的。你知道为什么它不工作吗?容器在我的机器上本地运行。

import psycopg2

try:
    conn = psycopg2.connect(
        host="localhost",
        database="my_database",
        user="postgres",
        password="postgres"
    )
    print("Verbindung zur PostgreSQL-Datenbank erfolgreich hergestellt.")
except Exception as e:
    print("Exception")
    print(e)
    conn = None

YML:

version: '3.7'
services:
  postgres:
    image: postgres
    container_name: my_postgres_container
    environment:
      POSTGRES_USER: postgres
      POSTGRES_PASSWORD: postgres
      POSTGRES_DB: my_database
    ports:
      - "5432:5432"
snvhrwxg

snvhrwxg1#

因为你的程序不是在同一个容器中运行的,所以你必须使用容器名来连接:

import psycopg2

try:
    conn = psycopg2.connect(
        host="my_postgres_container",
        database="my_database",
        user="postgres",
        password="postgres"
    )
    print("Verbindung zur PostgreSQL-Datenbank erfolgreich hergestellt.")
except Exception as e:
    print("Exception")
    print(e)
    conn = None
pod7payv

pod7payv2#

我尝试了一个不同的端口,突然它是工作.

相关问题