Node.js Sequelize docker连接被拒绝

Node.js Sequelize docker连接被拒绝,node.js,docker-compose,sequelize.js,koa,Node.js,Docker Compose,Sequelize.js,Koa,我正在使用postgresql构建一个在NodeJS上运行的应用程序。我使用SequelizeJS作为ORM。我一直在尝试对我的应用程序进行dockerize,但收到以下错误消息: SequelizeConnectionRefusedError: connect ECONNREFUSED 172.21.0.2:5432 我的码头工人: version: '3' services: db: image: postgres restart: always volum

我正在使用postgresql构建一个在NodeJS上运行的应用程序。我使用SequelizeJS作为ORM。我一直在尝试对我的应用程序进行dockerize,但收到以下错误消息:

 SequelizeConnectionRefusedError: connect ECONNREFUSED 172.21.0.2:5432
我的码头工人:

version: '3'

services:
  db:
    image: postgres
    restart: always
    volumes:
      - ./pgdata:/var/lib/postgresql/data
    environment:
      POSTGRES_USER: postgres
      POSTGRES_PASSWORD: sAjs21312ls
      POSTGRES_DB: dev-player
    ports:
      - "5432:5432"

  app:
    build: .
    environment:
      DB_USER: postgres
      DB_PASSWORD: sAjs21312ls
      DB_NAME: dev-player
    depends_on:
      - db
    ports:
      - "8090:8090"
我的续集连接:

const connection = new sequelize(
    'dev-player',
    'postgres',
    'sAjs21312ls',
    {
        host: 'db',
        port: 5432,
        dialect: 'postgres'
    }
);

这是你第一次启动postgres服务器吗?请记住,数据库不是在瞬间启动的,它可能需要一些时间才能开始侦听连接。如果您等待数据库启动(以便您可以通过
psql
手动连接到它),是否会出现同样的问题?如果问题是在后端已经开始尝试连接时,数据库根本没有时间初始化,我想您可能会在这个问题中找到有用的答案: