Я использую приложение NodeJS и связанные с ним службы (Redis, Postgres) через docker -compose. Мое приложение NodeJS может легко достичь Redis, используя его имя и порт из моего файла docker -compose, но по какой-то причине я не могу достичь Postgres:
Error: getaddrinfo EAI_AGAIN postgres
at GetAddrInfoReqWrap.onlookup [as oncomplete] (dns.js:66:26)
My docker -составить файл:
services:
api:
build:
context: ./
dockerfile: Dockerfile
ports:
- "3001:3001"
depends_on:
- postgres
- redis
postgres:
image: postgres:11.1
ports:
- "5432:5432"
expose:
- "5432"
hostname: postgres
environment:
POSTGRES_USER: root
POSTGRES_PASSWORD: root
POSTGRES_DB: test
restart: on-failure
networks:
- integration-tests
redis:
image: 'docker.io/bitnami/redis:6.0-debian-10'
environment:
# ALLOW_EMPTY_PASSWORD is recommended only for development.
- ALLOW_EMPTY_PASSWORD=yes
- REDIS_DISABLE_COMMANDS=FLUSHDB,FLUSHALL
ports:
- '6379:6379'
hostname: redis
volumes:
- 'redis_data:/bitnami/redis/data'
Я пробовал как обычные lts
, так и lts-alpine
базовые изображения для моего NodeJS приложения. Я использую knex
, который делегирует подключение к библиотеке pg
... Кто-нибудь знает, почему он даже не подключается? Я пробовал как запускать напрямую через docker-compose
, так и через tilt
.