Это мой docker-compose.yml
файл
services:
postgres:
image: "postgres:12"
network_mode: bridge
container_name: postgres
volumes:
- ./docker_data/postgres:/var/lib/postgresql/data
environment:
POSTGRES_DB: my_app
POSTGRES_USER: postgres
POSTGRES_PASSWORD: postgres
expose:
- 5432
ports:
- 5431:5432
my-app:
image: my-app:latest
network_mode: bridge
container_name: my-app
expose:
- 8000
ports:
- "127.0.0.1:8000:8000"
restart: unless-stopped
depends_on:
- postgres
links:
- postgres
volumes:
postgres-data:
Запуск docker-compose up
на ubuntu открывается и успешно запускает docker контейнер, а my-app
может подключаться к postgres и выполнять операции . Но то же самое на ma c дает эту ошибку -
Unable to obtain connection from database (jdbc:postgresql://postgres:5432/my_app) for user 'postgres': FATAL: the database system is starting up
Connection to postgres:5432 refused. Check that the hostname and port are correct and that the postmaster is accepting TCP/IP connection
Почему между Ubuntu и Ma c должна быть разница?!
Обновление
Оставив контейнер на некоторое время, я заметил, что теперь он может подключаться к postgres. Мои вызовы API тоже работают. Но при запуске контейнера docker возникает куча описанных выше ошибок, которые всплывают, а затем каким-то образом может подключиться к postgres. Это действительно странно.