5

我正在尝试使用 Postico 连接到本地机器上的 docker postgreSQL 容器。

我尝试连接到 0.0.0.0、localhost 和 127.0.0.1。每个都给我以下错误:

could not connect to server: Connection refused
    Is the server running on host "localhost" (::1) and accepting
    TCP/IP connections on port 5432?
could not connect to server: Connection refused
    Is the server running on host "localhost" (127.0.0.1) and accepting
    TCP/IP connections on port 5432?

0.0.0.0 给了我一个类似但更小的错误:

could not connect to server: Connection refused
    Is the server running on host "0.0.0.0" and accepting
    TCP/IP connections on port 5432?

这是我的 docker-compose 文件:

version: '3'
services:
  prisma:
    image: prismagraphql/prisma:1.23
    restart: always
    ports:
    - "4466:4466"
    environment:
      PRISMA_CONFIG: |
        port: 4466
        databases:
          default:
            connector: postgres
            host: postgres
            port: 5432
            user: prisma
            password: prisma
            migrations: true
  postgres:
    image: postgres:10.5
    restart: always
    environment:
      POSTGRES_USER: prisma
      POSTGRES_PASSWORD: prisma
    volumes:
      - postgres:/var/lib/postgresql/data
volumes:
  postgres:

感谢 Egor 找到了解决方案!我忘了ports: - "5432:5432"在我的 docker-compose 文件中指定。菜鸟错误;)

4

3 回答 3

9

我在使用 Postico 连接到 docker 容器中的 Postgres DB 时也遇到了问题。

最终,我的问题是我有一个本地 Postgres 数据库正在运行

一旦我断开本地 Postgres 数据库的连接,我就可以使用 Postico 连接到我的 docker 数据库。将主机设置为localhost,我使用文件中定义的 、 和主机POSTGRES_USER端口。POSTGRES_PASSWORDdocker-compose.yml

Postico 的连接详细信息

于 2019-02-26T03:50:21.787 回答
5

如果 postgres 版本无关紧要,尝试将 Postgres 图像更改为这个,它适用于我

并确保您添加端口docker-compose.yml

postgres:
    image: postgres
    restart: always
    environment:
      POSTGRES_USER: prisma
      POSTGRES_PASSWORD: prisma
    ports: 
     - "5432: 5432"
    volumes:
      - postgres:/var/lib/postgresql/data

Ps刚刚更新了可读性的答案

于 2019-01-07T22:52:27.373 回答
1

我遇到了 Postico 尝试连接到未启动的收藏夹的问题。这种连接重试永远持续下去,我什么也做不了。我需要做的就是将最喜欢的东西编辑成可行的东西,但我不能,这令人沮丧。

Positco 开发人员请通过要求用户选择一个收藏夹来连接到每次 postico 启动,而不是默认为他们连接来解决此问题。

于 2019-03-12T20:34:56.530 回答