Не получается подключиться к бд postgres(docker)
Всем привет. Пишу сервер на nest, использую postgres и пытаюсь подключить elasticsearch. Для того, чтобы протестировать последнее нужно, как я понял, запустить docker контейнер. Я, вроде как, все сделал, но при запуске контейнера возникает ошибка ERROR [ExceptionHandler] connect ECONNREFUSED 127.0.0.1:5432. Я понимаю, что вопросов с подобной ошибкой много, но я пока не нашел ничего подходящего для себя + до этого все работало нормально. Единственное, я думал по поводу миграций бд. Могут ли они как-то мешать подключиться к бд?
.env
PORT=5000
POSTGRES_HOST=localhost
POSTGRES_USER=postgres
POSTGRES_DB=cp-itr
POSTGRES_PASSWORD=12345
POSTGRES_PORT=5432
SECRET=SECRET3
ELASTICSEARCH_NODE=http://localhost:9200
ELASTICSEARCH_INDEX=tasks
Dockerfile
FROM node:12.13-alpine
WORKDIR /app
COPY package*.json ./
RUN npm install
COPY . .
COPY ./dist ./dist
CMD ["npm", "run", "start:dev"]
docker-compose
version: '3.0'
services:
main:
container_name: main_nest
build:
context: .
env_file:
- .development.env
volumes:
- .:/app
- /app/node_modules
ports:
- 5000:5000
- 9229:9229
command: npm run start:dev
depends_on:
- db_postgres
restart: always
db_postgres:
container_name: db_postgres
image: postgres:13
env_file:
- .development.env
environment:
PG_DATA: /var/lib/postgresql/data
ports:
- 5432:5432
volumes:
- pgdata:/var/lib/postgresql/data
restart: always
nest-elasticsearch:
container_name: nest-elasticsearch
image: docker.elastic.co/elasticsearch/elasticsearch:7.0.1
healthcheck:
test: [ "CMD-SHELL", "curl --silent --fail localhost:9200/_cat/health?h=st || exit 1" ]
interval: 50s
timeout: 30s
retries: 5
environment:
- cluster.name=cp-itr
- bootstrap.memory_lock=true
- "ES_JAVA_OPTS=-Xms512m -Xmx512m"
- discovery.type=single-node
ports:
- 9300:9300
- 9200:9200
volumes:
pgdata:
Ответы (1 шт):
А почему POSTGRES_HOST=localhost разве не POSTGRES_HOST=db_postgres соединение же происходит в подсети docker