Подключение к контейнеру DataStax Distribution Apache Cassandra - PullRequest
1 голос
/ 01 октября 2019

Я создал контейнер Docker DataStax Distribution для Apache Cassandra (DDAC):

docker pull datastax/ddac
docker run -e DS_LICENSE=accept --name ddac -d datastax/ddac

docker ps

enter image description here


При подключении возникла ошибкак узлу через Datastax DevCenter:

enter image description here

Та же ошибка произошла при попытке подключения через порты 7000 и 7199.


Как подключиться к узлу DDAC, развернутому в док-контейнере?


ОБНОВЛЕНИЕ

Я отключил брандмауэр Windows на всякий случай. Используйте docker run -e DS_LICENSE=accept --name ddac -p 9042:9042 -d datastax/ddac и получите ту же ошибку:

Не удалось связаться с указанными хостами. Все хосты попытались выполнить запрос (неудачно: localhost / 0: 0: 0: 0: 0: 0: 0: 1: 9042 (com.datastax.driver.core.exceptions.TransportException: [localhost / 0: 0: 0: 0: 0: 0: 0: 1] Канал был закрыт), localhost / 127.0.0.1: 9042 (com.datastax.driver.core.exceptions.TransportException: [localhost / 127.0.0.1] Канал был закрыт))
[localhost / 0: 0: 0: 0: 0: 0: 0: 1] Канал был закрыт
[localhost / 127.0.0.1] Канал был закрыт

enter image description here

1 Ответ

1 голос
/ 01 октября 2019

Это происходит потому, что у контейнера есть собственный IP, и вам нужно либо подключиться к нему - вы можете получить IP контейнера с помощью

docker inspect -f '{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}' ddac

или открыть порты Cassandra на хосте, чтобы вы могли подключитьсячерез localhost - это делается через -p флаг docker run:

docker run -e DS_LICENSE=accept --name ddac --rm -p 9042:9042 -d datastax/ddac
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...