Как мне в докере запустить app + postgres?

Нужно для начала локально запустить app + postgres а потом на сервере.

Есть БД posgres. Вот ее настройки: файл .env

PORT=5000
CLIENT_URL:http://localhost:5000
API_URL=http://localhost:5000
HOST="wfwef"
DB_HOST="wfwef"
DB_PORT=5432
DB_NAME="wfwef"
DB_USER="wfwef"
DB_PASSWORD="wfwef"
SMTP_HOST=smtp."wfwef"
SMTP_PORT=465
SMTP_USER="wfwef"
SMTP_PASSWORD="wfwef"
ADMIN_EMAIL="wfwef"

Я создаю image и запускаю docker-compose.yaml Файл docker-compose.yaml

version: '3.5'

services:
  db_vertex: 
    container_name: db_vertex
    ports:
      - "5432:5432"
    environment:
      - POSTGRES_PASSWORD="wfwef"
      - POSTGRES_USER="wfwef"
    image: postgres:14.3-bullseye

Далее я вижу, что контейнер с БД запущен и даже когда я пытаюсь локально подключиться к этой бд запустив мое приложение - все получается. Далее я хочу засунуть app в контейнер и так-же запустить его чтобы потом смог сделать тоже самое на сервере. Создаю Dockerfile

FROM node

WORKDIR /app

COPY package.json /app/

RUN npm install

COPY . . 

ENV PORT 5000

EXPOSE $PORT


CMD [ "npm","run", "dev" ]

После получаю image от которого запускаю контейнер и получаю ошибку. В чем я ошибся и как это испровить? Ошибка:

ConnectionRefusedError [SequelizeConnectionRefusedError]: connect ECONNREFUSED 127.0.0.1:5432
    at Client._connectionCallback (/app/node_modules/sequelize/lib/dialects/postgres/connection-manager.js:130:24)
    at Client._handleErrorWhileConnecting (/app/node_modules/pg/lib/client.js:305:19)
    at Client._handleErrorEvent (/app/node_modules/pg/lib/client.js:315:19)
    at Connection.emit (node:events:527:28)
    at Socket.reportStreamError (/app/node_modules/pg/lib/connection.js:52:12)
    at Socket.emit (node:events:527:28)
    at emitErrorNT (node:internal/streams/destroy:151:8)
    at emitErrorCloseNT (node:internal/streams/destroy:116:3)
    at process.processTicksAndRejections (node:internal/process/task_queues:82:21) {
  parent: Error: connect ECONNREFUSED 127.0.0.1:5432
      at TCPConnectWrap.afterConnect [as oncomplete] (node:net:1195:16) {
    errno: -111,
    code: 'ECONNREFUSED',
    syscall: 'connect',
    address: '127.0.0.1',
    port: 5432
  },
  original: Error: connect ECONNREFUSED 127.0.0.1:5432
      at TCPConnectWrap.afterConnect [as oncomplete] (node:net:1195:16) {
    errno: -111,
    code: 'ECONNREFUSED',
    syscall: 'connect',
    address: '127.0.0.1',
    port: 5432
  }
}

Ответы (0 шт):