Настройка кажется правильной. Убедитесь, что порт 5432
правильно опубликован. Предполагая, что вы используете официальный cratedb образ , открытые порты в Dockerfile , используемые для сборки образа, следующие:
# http: 4200 tcp
# transport: 4300 tcp
# postgres protocol ports: 5432 tcp
EXPOSE 4200 4300 5432
Таким образом, для удаленного доступа к этим службам вы должны опубликовать соответствующие порты. В docker-compose.yml
настройте сопоставления портов, если вы еще этого не сделали:
version: "3.5"
services:
cratedb:
image: crate
ports:
- 5432:5432
- 4200:4200
- 4300:4300
Подробнее о сопоставлении портов в разделе портов справки Compose file . Теперь вы сможете подключаться с помощью драйвера ODBC PostgreSql
к IP-адресу хоста (т.е. 192.168.99.100
) и порту 5432
.
В качестве альтернативы вы можете запустить контейнер с привязками портов:
docker run -d -p 4200:4200 -p 5432:5432 -p 4300:4300 crate
Если вы все еще можете подключиться к базе данных, проверьте настройки брандмауэра.