我正在使用postgres:10.3在Docker(18.03.1-ce)中,一切都很好,直到今天它意外地停止了对ipv4的监听。我没有更改任何数据库配置。而不是显示
侦听IPv4地址“127.0.0.1”,端口5432
在日志中,现在显示
侦听Unix套接字“/var/run/postgresql/.s.PGSQL.5432”
命令netstat -a
:
Proto Recv-Q Send-Q Local Address Foreign Address State
tcp 0 0 127.0.0.11:41441 0.0.0.0:* LISTEN
udp 0 0 localhost:47558 localhost:47558 ESTABLISHED
udp 0 0 127.0.0.11:33252 0.0.0.0:*
Proto RefCnt Flags Type State I-Node Path
unix 2 [ ACC ] STREAM LISTENING 943382 /var/run/postgresql/.s.PGSQL.5432
pg_hba.conf内容:
TYPE DATABASE USER ADDRESS METHOD
local all all trust
host all all 127.0.0.1/32 trust
host all all ::1/128 trust
local replication all trust
host replication all 127.0.0.1/32 trust
host replication all ::1/128 trust
host all all all md5
在postgresql.conf中:
listen_addresses = '*'
我没有暴露postgres容器外的任何端口。这些服务在Docker Swarm中相互通信。