Как настроить драйвер ODBC для PostgreSQL - PullRequest
1 голос
/ 09 июля 2019

У меня есть база данных на Crate DB. Программа базы данных запускается через файл docker-compose.yml. Он работает на http://192.168.99.100:4200 (это IP-адрес док-машины с портом ящика)

Я хочу подключить Crate DB к Power BI. Когда я пытаюсь настроить драйвер ODBC для PostgreSQL, я не знаю, что печатать в поле «Сервер».

До сих пор я пробовал "localhost", "127.0.0.1", "0.0.0.0", "192.168.99.100", но ни одна из этих работ.

Итак, мой вопрос: какой IP-адрес я должен ввести в поле «сервер»?

connectionError

1 Ответ

1 голос
/ 11 июля 2019

Настройка кажется правильной. Убедитесь, что порт 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

Если вы все еще можете подключиться к базе данных, проверьте настройки брандмауэра.

...