在EC2上使用docker-compose的用户“postgres”密码验证失败

问题描述 投票:0回答:2

在由docker-machine创建的EC2 linux服务器上,当我启动docker postgres:10.6 by docker-compose时,我有这些循环错误:

FATAL:  password authentication failed for user "postgres"
DETAIL:  Password does not match for user "postgres".
Connection matched pg_hba.conf line 95: "host all all all md5"

如果我手动启动容器,我没有这些错误=> docker run -e POSTGRES_PASSWORD = myPassword postgres:10.6

我的本地docker中没有这些错误

我的码头组成:

  db:
    container_name: postgres
    image: postgres:10.6
    restart: always
    environment:
      POSTGRES_PASSWORD: myPassword
    ports:
      - "5432:5432"

是否有人有想法解决这个问题(我被困了两天)?

postgresql docker amazon-ec2 docker-compose docker-machine
2个回答
1
投票

这可能是因为第一次启动后卷(或绑定挂载目录)已经初始化。 postgres用户和数据库创建仅在第一次启动时发生(即/ var / lib / postgresql / data必须不包含数据库文件)。尝试运行:

  • docker-compose rm -fv postgres删除任何容器或卷(特别是)。
  • docker-compose up -d开始你的容器。

0
投票

对不起,我有我的问题的答案,这不是一个错误我只是尝试永久连接到postgres(通过端口5432打开)...

搜索之后,我认为这是一次黑客攻击,因为传入的连接永远不会来自同一个IP

connection received: host=45.120.120.149.81 port=47118
connection received: host=210.4.125.252 port=44774
connection received: host=82.223.55.254 port=36320

等等....

© www.soinside.com 2019 - 2024. All rights reserved.