【问题标题】:Can't connect remotely to PostGIS docker无法远程连接到 PostGIS docker
【发布时间】:2020-06-15 09:18:21
【问题描述】:

我使用以下代码创建了一个 PostGIS docker 容器:

docker run --name=h4d -d -e POSTGRES_USER=h4d_user -e POSTGRES_PASS=password -e POSTGRES_DBNAME=gis -e ALLOW_IP_RANGE=0.0.0.0/0 -p 5432:5432 -v h4d_data:/var/lib/postgresql --restart=always kartoza/postgis:latest

我可以从本地主机连接到 docker,但不能从另一个终端连接。错误消息显示“无法连接到服务器:连接超时 (0x0000274C/10060) 服务器是否在主机“”上运行并接受端口 5432 上的 TCP/IP 连接?

我不确定是否必须编辑一些防火墙设置或其他内容。我正在使用 Windows 10

【问题讨论】:

  • 不,我没有,我不确定如何在 docker 容器中编辑这两个文件

标签: postgresql docker postgis


【解决方案1】:

也许这会有所帮助..

转到postgresql.conf 并将listen_addresses 的参数更改为您希望的IP 地址,或者将* 用于所有IP,例如:

listen_addresses = '*'

pg_hba.conf 文件中,您还必须添加哪些 ips 和用户可以访问某个数据库,例如

host my_db my_user 128.176.1.1 md5

在 Ubuntu 机器中,这些文件通常位于:/etc/postgresql/10/main

【讨论】:

  • @FranMartinRivas 来自数据库的错误消息,而ALLOW_IP_RANGE=0.0.0.0/0 则位于容器中。通常当没有到达数据库服务器时,例如由于防火墙,连接挂起并最终超时。我发布的说明是让 postgres 接受来自远程服务器的连接,因为它是 not 默认设置的。
猜你喜欢
  • 2021-11-09
  • 2019-08-11
  • 1970-01-01
  • 1970-01-01
  • 2019-08-09
  • 1970-01-01
  • 2018-11-12
  • 2016-06-29
  • 2015-01-03
相关资源
最近更新 更多