image: strapi/strapi
restart: always
environment:
DATABASE_CLIENT: postgres
DATABASE_NAME: strapi
DATABASE_HOST: database
DATABASE_PORT: 5433
DATABASE_USERNAME: strapi
DATABASE_PASSWORD: strapi
links:
- db:database
volumes:
- ../backend:/srv/app
ports:
- '1338:1337'
db:
image: postgres
restart: always
environment:
POSTGRES_USER: strapi
POSTGRES_PASSWORD: strapi
volumes:
- database-data:/var/lib/postgresql/data
ports:
- '5433:5432'
volumes:
database-data:
выдает ошибку error Error: connect ECONNREFUSED 127.0.0.1:5433
как исправить?
Ну исправить то, что у тебя стучится по 127.0.0.1 или localhost на название сервиса в docker-compose
так у меня DATABASE_HOST: database
А сервис называется db
все равно так же само только теперь connect ECONNREFUSED 172.22.0.4:5433
Инструкция ports показывает, какой порт на хостмашине будет открыт к сервису внутри докер-компоуза. Так что меняй порт на 5432
зачем менять если в сервисе котрый его использует прописывает порт 5433
Когда мы пишем ports: - 5433:5432 Мы говорим докеру «прокинь порт 5432 из контейнера на порт 5433 для хост-машины». Извне (с хост-машины, например) ты можешь подключаться по 5433, но внутри сети, которую создаст docker-compose, эта инструкция не действует
Укажи порт внутренний 5432
Лучше в доку отправляй... это ппц
Обсуждают сегодня