У меня проблемы с доступом к базе данных, созданной из файла docker-compose.
Учитывая следующий файл compose, я смогу подключиться к нему из java, используя что-то вроде:
jdbc:postgresql://eprase:eprase@database:7000/eprase
Однако соединение отклонено.Я даже не могу использовать PGAdmin, чтобы соединить его, используя те же данные для создания нового сервера.
Я ввел контейнер базы данных и выполнил команды psql, чтобы убедиться, что пользователь и база данных eprase были созданы в соответствии сДокументация Postgres Docker, все выглядит нормально.Я не могу сказать, находится ли проблема в контейнере базы данных или что-то, что мне нужно изменить в составной сети.
Клиентские и серверные службы можно в значительной степени игнорировать, сервер - это веб-API на основе Java, иклиент является угловым приложением.
Создать файл:
version: "3"
services:
client:
image: eprase/client:latest
build: ./client/eprase-app
networks:
api:
ports:
- "5000:80"
tty: true
depends_on:
- server
server:
image: eprase/server:latest
build: ./server
networks:
api:
ports:
- "6000:8080"
depends_on:
- database
database:
image: postgres:9
volumes:
- "./database/data:/var/lib/postgresql/data"
environment:
- "POSTGRES_USER=eprase"
- "POSTGRES_PASSWORD=eprase"
- "POSTGRES_DB=eprase"
networks:
api:
ports:
- "7000:5432"
restart: unless-stopped
pgadmin:
image: dpage/pgadmin4:latest
environment:
- "PGADMIN_DEFAULT_EMAIL=admin@eprase.com"
- "PGADMIN_DEFAULT_PASSWORD=eprase"
networks:
api:
ports:
- "8000:80"
depends_on:
- database
networks:
api: