无法通过 pgAdmin 连接到 Docker 容器上的 Postgres

Can't Connect to Postgres on Docker Container via pgAdmin

我已经使用 docker pull postgres 拉取了 postgres 镜像。 我也试过 运行 图片来自 https://docs.docker.com/examples/postgresql_service/

我 运行 他们使用 -p 5432:5432 选项,但无法与 pgAdmin 连接。 当我尝试通过 localhost:5432 连接时,它给了我超时。 我在 Internet 上找到的示例说只需使用 -p。我做了,但它不起作用。 至少从上面的例子来看,安全设置也是非常宽松的。 有什么建议吗?

我遵循的示例适用于 Linux,但不适用于 OS X。 当您从 OS X 连接到 postgres 时,您不使用 'localhost:5432',而是 IP:5432。您可以从

找到合适的IP

取决于您 运行 Docker,这不太可能奏效。 Docker 守护进程在 OS X 上的虚拟机中运行,这意味着您实际上需要连接到该 IP 地址(而不是本地主机)。要查找该 IP 地址,请键入以下内容:

docker-machine ip default

您返回的 IP 会告诉您要连接到的 IP。