docker-compose 中的 Postgres 数据库每 2-3 秒出现一次身份验证错误

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

container error

每次我在服务器上启动 docker-compose 时,都会收到此错误,每 2-3 秒重复一次。我以前没有遇到过这个问题(使用了2-3天)。一旦它突然出现,我不知道如何修复它。我尝试删除包含数据库文件的文件夹,以便它再次初始化,我尝试更改卷的名称,从 postgres:16-alpine 迁移到 postgres:15-alpine 版本。似乎什么都不起作用。这是我的 docker-compose 文件:

services:
  bot:
    build: .
    env_file:
      - .env
    restart: unless-stopped
    depends_on:
      postgres_db:
        condition: service_healthy

  postgres_db:
    image: postgres:15-alpine
    restart: unless-stopped
    environment:
      - POSTGRES_USER=admin
      - POSTGRES_PASSWORD=test1924
      - POSTGRES_DB=discord
    ports:
      - "5432:5432"
    volumes: 
      - ./data:/var/lib/postgresql/data
    healthcheck:
      test: ["CMD-SHELL", "sh -c 'pg_isready -U ${POSTGRES_USER} -d ${POSTGRES_DB}'"]
      interval: 10s
      timeout: 5s
      retries: 5
  
  pg_admin:
    image: dpage/pgadmin4
    restart: unless-stopped
    environment:
      - [email protected]
      - PGADMIN_DEFAULT_PASSWORD=root
    ports:
  - "5050:80"

我真的不知道为什么默认情况下不创建 postgres 用户。任何帮助将不胜感激!这是 pg_admin 的角色截图:

pg_admin

postgresql docker docker-compose
1个回答
2
投票

这些消息是由于黑客尝试登录您的 Postgres 数据库失败而导致的。他们尝试使用用户“postgres”登录,并且可能使用密码“postgres”登录,因为这些在测试数据库中被大量使用。

如果您不需要从 docker 网络外部访问数据库,则可以删除端口映射,以便无法从 Internet 访问容器。

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